it-swarm.com.de

Seitenklassen-Suffix funktioniert nicht

Ich möchte einer Seite meiner Website ein benutzerdefiniertes CSS hinzufügen ... Ich habe das Seitenklassensuffix der Seite, die ich bearbeiten möchte, bearbeitet, aber ich weiß nicht, warum die Klasse nicht im Textkörper angezeigt wird, wenn ich zu gehe diese Seite ...

Wie kann ich dem Hauptteil der Seite, die ich ändern möchte, eine Klasse hinzufügen?

5
Antonio

Wenn Sie die Seitenklasse zum Hauptteil hinzufügen möchten, fügen Sie diesen Code über dem Doctype hinzu:

<?php
  $app = JFactory::getApplication();
  $menu = $app->getMenu()->getActive();
  $pageclass = '';

  if (is_object($menu))
    $pageclass = $menu->params->get('pageclass_sfx');
?>

Und dieser Code für deinen Körper

<body id="<?php echo $pageclass ? htmlspecialchars($pageclass) : 'default'; ?>">

Alle Elemente ohne Seitenklasse verwenden die ID "default". Alle Elemente mit der definierten Seitenklasse werden als ID des Texts angezeigt. Natürlich können Sie diese ID in class ändern, wenn Sie dies benötigen.

5
Faye

Nachdem Sie die Kommentare gelesen haben, tun Sie, bis auf das letzte Bit, was REactionFaye vorschlägt. Sie möchten, dass Ihr Body Tag wie folgt aussieht:

<body <?php if ($pageclass != '') echo 'class="'.htmlspecialchars($pageclass).'"';?>>

In diesem Fall wird das Klassenattribut nur für die Menüelemente festgelegt, für die tatsächlich ein Seitenklassensuffix konfiguriert ist.

3
Khaarkh

Sie müssten index.php ändern, da Joomla die Seitenklasse nicht zum Hauptelement hinzufügt, sondern zum übergeordneten <div> für die Ansicht, z.B. com_content für Artikel. In index.php benötigen Sie:

<body class="<?php echo $this->pageclass_sfx;?>"

Möglicherweise möchten Sie auch eine Vorlagenüberschreibung für den Ansichtstyp erstellen, um die Seitenklasse daraus zu entfernen, damit sie nicht im Dokumentkörper dupliziert wird.

1
Seth Warburton

Auch wenn ich das gleiche Problem habe, gibt die Variable joomla $ pageclass an, dass beim Erstellen eines Menüs der Seitenklassenname unter der Option für die Seitenanzeige angegeben werden muss.

Und nennen Sie dies im Body-Tag: ">

Es wird funktionieren.

Hinweis: Wenn Sie ein neues Menü erstellen, benötigen Sie einen separaten Klassennamen im Body-Tag. Wir müssen die Seitenklasse hinzufügen.

Grüße, Log3

0
Log3