Verberg artikel op de homepage van Joomla

Je kan met onderstaande PHP code een controle uitvoeren of de Joomla Homepage wordt bekeken of niet.

De PHP code plaats je in het template index.php bestand. Met deze controle kan je bijvoorbeeld geen artikel laten weergeven wanneer je de homepage bekijkt. Je ziet dan alleen modules en of menu's.

 

Onderstaande code is voor Joomla 2.5* en 3.* series.


<?php

$app = JFactory::getApplication();
$menu = $app->getMenu();
if ($menu->getActive() == $menu->getDefault()) {
}
else {
 }

?>


Voorbeeld code toegepast in index.php (in de template folder). Wanneer de homepage wordt bekeken wordt er geen artikel weergegeven. Ook banner2, breadcrumb, user1, user2, banner3, banner4, user4, user5 en banner5 posities worden niet weergegeven op de homepage.

 


<div class="art-layout-cell art-content">

<?php

$app = JFactory::getApplication();
$menu = $app->getMenu();
if ($menu->getActive() == $menu->getDefault()) {
}
else {

  echo $view->position('banner2', 'art-nostyle');
  if ($view->containsModules('breadcrumb'))
  echo artxPost($view->position('breadcrumb'));
  echo $view->positions(array('user1' => 50, 'user2' => 50), 'art-article');
  echo $view->position('banner3', 'art-nostyle');
  echo artxPost(array('content' => '<jdoc:include type="message" />', 'classes' => ' art-messages'));
  echo '<jdoc:include type="component" />';
  echo $view->position('banner4', 'art-nostyle');
  echo $view->positions(array('user4' => 50, 'user5' => 50), 'art-article');
  echo $view->position('banner5', 'art-nostyle');
 
 }

?>
</div>

 

 

Is je site meertalig dan is de homepage afhankelijk van de gekozen taal. Je moet dan onderstaande code toepassen:


<?php
$app = JFactory::getApplication();
$menu = $app->getMenu();
if ($menu->getActive() == $menu->getDefault( 'en-GB' )) {
        echo 'This is the front page';
}
elseif ($menu->getActive() == $menu->getDefault( 'fr-FR' )) {
        echo 'Accueil';
}
?>

 

 

Voor meertalige sites kan het noodzakelijk zijn om een specifieke code/html weer te geven voor alle standaard homepages.


<?php
$app = JFactory::getApplication();
$menu = $app->getMenu();
$lang = JFactory::getLanguage();
if ($menu->getActive() == $menu->getDefault($lang->getTag())) {
        echo 'This is the front page';
}
else {
        echo 'Accueil';
}
?>