PDA

Zobacz pełną wersję : Problem z załączaniem modułu z innego pliku



agaldo
11-04-2010, 21:14
Witam

Mam następujący problem , z którym męcze się już sporo czasu i nic :(
A mianowicie:

Mam kod index.php w nim menu, po kliknięciu na np start chciałam załadować za pomocą jquery inny plik z zawartością odpowiedniego div'a, w div'ie tym chciałam umieścić np. <jdoc:include type="component" style="xhtml" /> Przyklad:

index.php


<head>
<!--For change pages -->
<script type="text/javascript">

jQuery(document).ready(function($)
{
$.history.init(pageload);

$('a[href=' + window.location.hash + ']').addClass('selected');

$('a[rel=ajax]').click(function () {

var hash = this.href;
hash = hash.replace(/^.*#/, '');
$.history.load(hash);

$('a[rel=ajax]').removeClass('selected');
$(this).addClass('selected');
$('#body').hide();


getPage();

return false;
});
}
);


function pageload(hash) {
if (hash) getPage();
}

function getPage() {
var data = 'page=' + encodeURIComponent(document.location.hash);
$.ajax({
url: "templates/<?php echo $this->template ?>/loader.php",
type: "GET",
data: data,
cache: false,
success: function (html) {
$('#content').html(html);
$('#body').fadeIn('slow');

}
});
}
</script>
</head>
...
<body>
<ul class="menu">
<li> <a href="#page1" rel="ajax"> START </a></li>
<li> <a href="#page2" rel="ajax"> strona1</a></li>
<li> <a href="#page3" rel="ajax"> strona2 </a></li>
<li> <a href="#page4" rel="ajax"> strona3</a></li>

</ul>


...
<div id="body">
<div id="content">
</div>
</div>
...
</body>




loader.php




<?php

switch(isset($_GET['page']) ? $_GET['page'] : '#page1') {

case '#page1' : $page = '

<jdoc:include type="modules" name="user3" />
'; break;

case '#page2' : $page = '

<jdoc:include type="component" style="xhtml" />
'; break;

}

echo $page;
?>




Jestem baaardzo początkująca nie wiem nawet czy tak można sobie ładować z innego pliku, jeśli wrzuce ten <jdoc..> do index.php to działa ale stąd nie :(. Wiem, że Jquery ma jakieś konflikty z Motools . Jquery działa, tylko komponenty Joomli się nie chcą ładować help

doti_w
11-04-2010, 21:21
niestety nie znam ajaxa, ale jeśli napiszesz co dokładnie chciałabyś uzyskać to może dałoby się znaleźć inny sposób

agaldo
11-04-2010, 21:41
za pomocą tego skryptu Jquery mam takie super ładowanie stron, fajny efekt, konkretny div się "pojawia" , zwykły ajaxowy bajer.
Dokładnie chciałabym , żeby artykuły joomli "ładowały" mi się do loader.php ten plik jest zwyczajnie załączany do index.php. Np klikam na start , jego <a class="page1" więc do diva content ładowany jest case 'page1' a ten zaś ma zawierać <jdoc..> jooml'owy :)

W pliku loader.php divy są w pazurkach może to jakoś blokuje joomle ?