logo

Palette - Mach es bunt🎨

Palette - Visueller Page Builder. Keine Designkenntnisse nötig.

Live-Demo Palette herunterladen

Scroll

Einen Block auf Seiten eines bestimmten Inhaltstyps anzeigen

26/05/2025, by Ivan

Manchmal muss ein Block nur auf bestimmten Seiten eines einzelnen Inhaltstyps angezeigt werden. In den Standard-Einstellungen kann die Sichtbarkeit eines Blocks nur über einen bestimmten Pfad oder Benutzerrollen konfiguriert werden. Der folgende Code, der in die Sichtbarkeitseinstellungen des Blocks eingefügt wird, wenn der PHP-Modus aktiviert ist, erlaubt es, den Inhaltstyp auszuwählen, auf dessen Seiten der Block angezeigt wird.

<?php
$match = false;
if (arg(0) == 'node' && is_numeric(arg(1))) {
  $nid = arg(1);
  $node = node_load(array('nid' => $nid)); 
  $type = $node->type; 
  if (isset($types[$type])) { 
    $match = TRUE;   
  }
} 
if (substr($_SERVER["REQUEST_URI"], 0, 6) == '/page/') {
  $match = TRUE;
} 
if (substr($_SERVER["REQUEST_URI"], 0) == "/node/add/page") { 
  $match = TRUE;
} 
return $match; 
?>

So wird der Block zum Beispiel auf den Seiten des Inhaltstyps page angezeigt sowie auf den Seiten zur Erstellung eines neuen page-Inhalts. Dabei ist $types ein Array mit den maschinellen Namen der Inhaltstypen, z. B. so:

$types = array('page' => 'page', 'news' => 'news');