Erweiterte Funktionen
Neben den Basis-Platzhaltern bietet WBCE weitere Möglichkeiten für anspruchsvollere Templates.
Suchmaske einbinden
<?php if(SHOW_SEARCH) { ?>
<form name="search" action="<?php echo WB_URL; ?>/search/index.php" method="get">
<input type="hidden" name="referrer"
value="<?php echo defined('REFERRER_ID') ? REFERRER_ID : PAGE_ID; ?>" />
<input type="text" name="string" />
<input type="submit" value="<?php echo $TEXT['SEARCH']; ?>" />
</form>
<?php } ?>
Pflichtfelder: versteckter Parameter referrer und Eingabefeld mit Name string. Gestaltung ansonsten frei.
Alternativ: Droplet SearchBox verwenden.
Suchergebnisse hervorheben — in die Template-CSS eintragen:
.highlight { background-color: #ffff00; }
Frontend-Login einbinden
Zeigt eine Anmeldemaske wenn Frontend-Login aktiv ist und der Besucher nicht eingeloggt ist — nach Login eine Abmeldemaske:
<?php
if(FRONTEND_LOGIN == 'enabled' AND $wb->get_session('USER_ID') == '') { ?>
<form name="login" action="<?php echo LOGIN_URL; ?>" method="post">
<input type="text" name="username" />
<input type="password" name="password" />
<input type="submit" value="<?php echo $TEXT['LOGIN']; ?>" />
<a href="<?php echo FORGOT_URL; ?>"><?php echo $TEXT['FORGOT_DETAILS']; ?></a>
</form>
<?php } elseif(FRONTEND_LOGIN == 'enabled') { ?>
<form name="logout" action="<?php echo LOGOUT_URL; ?>" method="post">
<?php echo $wb->get_display_name(); ?>
<input type="submit" value="<?php echo $MENU['LOGOUT']; ?>" />
</form>
<?php } ?>
Interne Links per wblink
Statt absoluter URLs können Seiten per ID verlinkt werden — der Outputfilter ersetzt den Platzhalter automatisch:
<a href="https://wbce-handbuch.de/pages/konzepte/templates-konzept.php">Wir über uns</a>
Vorteil: Link bleibt gültig auch wenn die Seiten-URL sich ändert.
Optionale Blöcke
Template-Bereiche können in Abhängigkeit von Seitenvariablen angezeigt oder ausgeblendet werden:
<?php if(PAGE_ID == 1) { ?>
<!-- Nur auf der Startseite -->
<?php } ?>
Zweiter Block für Topics
Das Topics-Modul kann einen zweiten Block nutzen — z.B. für Beitragsbild oder Navigation:
if(defined('TOPIC_BLOCK2') AND TOPIC_BLOCK2 != '') {
$page_content_2 = TOPIC_BLOCK2;
} else {
ob_start();
page_content(2);
$page_content_2 = ob_get_contents();
ob_end_clean();
}
echo $page_content_2;