it-swarm.com.de

Wie kann ich einen Menüpunkt programmatisch hinzufügen / entfernen?

Ich habe eine Joomla v2.5.14-Anwendung und muss einen Menüeintrag aufgrund eines Datenbankwerts vor den Benutzern verbergen. Im Grunde muss ich den Menüeintrag aufgrund einer Bedingung verbergen.

Meine Frage ist, wo ist der richtige Ort, um dies durchzuführen? und wie geht das?

2
skinni

Angenommen, die Menüoption verfügt über einen geeigneten CSS-Selektor, z. "item-135", es könnte über CSS ausgeblendet werden.

Sie können ein benutzerdefiniertes HTML-Modul erstellen, um den entsprechenden Code zu den entsprechenden Seiten hinzuzufügen. Stellen Sie die Position des benutzerdefinierten HTML-Moduls auf "debuggen" oder Ähnliches ein, wenn Ihre Vorlage über diese Option verfügt (da für die Position des Debug-Moduls mit geringerer Wahrscheinlichkeit Ränder oder Auffüllungen verbunden sind).

Installieren und aktivieren Sie das Regular Labs Sourcerer -Plugin oder ähnliches, damit der Code nicht aus Ihrem benutzerdefinierten HTML-Modul entfernt wird.

Im benutzerdefinierten HTML-Modul sieht Ihr Code folgendermaßen aus:

{source}
  <?php
    if ([some condition]) {
      $document = JFactory::getDocument();
      $style = '.item-135 {display: none;}';
      $document->addStyleDeclaration ($style);
    }
  ?>
{/source}
2
Neil Robertson