Hallo zusammen,
aus einem Navigationsmenü heraus würde ich gerne bestimmte Seiteninhalte in einer Lightbox aufrufen. Bsp. FAQ, Impressum, Datenschutz etc.
Die im Theme (Divi) integrierte Mini-Lightbox unterstützt keine iFrames so dass ich auf ein externes Produkt (LightboxPlus) ausweichen musste. Um nun einen Link in einer Lightbox zu öffnen, müssen diesem die Klassen "lbp_secondary" und "lbp_modal" zugewiesen werden.
Füge ich diese Klassen nun über Design -> Menü's dem Link hinzu welcher in der Lightbox geöffnet werden soll, wird nicht dem <a> sondern dem zuvorstehenden <li> die Klassen zugewiesen.
Um die Klassen nun dem <a> hinzuzufügen habe ich dieses lustige Schnippelchen gefunden, welches nun in der functions.php seinen Dienst tut.
function add_menuclass($ulclass) {
return preg_replace('/<a rel="fbox"/', '<a class="lbp_secondary lbpmodal"', $ulclass, 1);
}
add_filter('wp_nav_menu','add_menuclass');
Funktioniert auch...allerdings nur bedingt.
Die Funktion gibt nämlich lediglich dem ersten li a Element, unabhängig ob er in der rel="fbox" ist, beide Klassen. Die anderen bleiben vollkommen unberührt.
Wie kann ich die Funktion ändern, so dass mir alle mit rel="fbox" gekennzeichneten Links mit den Klassen ausgestattet werden?
Oder gibt es vielleicht eine andere Möglichkeit?
Danke im Voraus!!!