que vous voulez juste appeler le contenu d'un module à partir d'une URL la réponse suivante vous aidera.
Si vous voulez juste pour afficher/masquer un module dans la même page, vous pouvez utiliser quelque chose de similaire à ma réponse précédente: Joomla 3 Show different modules on same position depending on toggler
Joomla fournit la fonctionnalité d'appeler un fichier spécifique du modèle actif en ajoutant la tmpl=FILENAME
clé/valeur de la chaîne de requête de l'URL. Tous les modèles intégrés ont un fichier component.php si l'utilisateur souhaite charger le modèle avec le composant uniquement. Vous pouvez vérifier le lien suivant pour plus de détails: Adding print pop-up functionality to a component.
Vous pouvez faire quelque chose de similaire pour afficher uniquement les modules que vous souhaitez charger. Vous pouvez copier le component.php dans un nouveau fichier (j'ai utilisé custom.php) et ajouté le code php suivant dans la partie <body> ... </body>
.
<?php
$jinput = JFactory::getApplication()->input;
$selectedPosition = $jinput->getString("position", "");
$selectedModule = $jinput->getString("module", "");
$selectedModuleTitle = $jinput->getString("title");
if($selectedPosition !== "") {
$modules = JModuleHelper::getModules($selectedPosition);
foreach ($modules as $module) {
echo JModuleHelper::renderModule($module);
}
} elseif ($selectedModule !== "") {
$module = JModuleHelper::getModule($selectedModule, $selectedModuleTitle);
echo JModuleHelper::renderModule($module);
}
?>
Donc, avec la même manière que loadposition/loadmodule œuvres que vous pouvez appeler le nouveau fichier de modèle à l'aide:
index.php?tmpl=custom&position=MODULE_POSITION
ou
index.php?tmpl=custom&module=MODULE_TYPE
ou
index.php?tmpl=custom&module=MODULE_TYPE&title=MODULE_TITLE
option si vous vouloir charger le m Théodule avec un style spécifique, vous pouvez passer à la deuxième paramter de la méthode renderModule comme:
echo JModuleHelper::renderModule($module, array("style" => "xhtml"));
Hope this helps