Hallo,
ich suche eine Lösung für folgendes Problem (Extension wurde mit dem Kickstarter erstellt): In der Frontend-Ausgabe (SingleView) sollen Spaltenüberschriften nur ausgegeben werden, wenn die entsprechende Spalte nicht leer ist. Mit verschiedenen Varianten von if (!isset) oder if (empty) bin ich nicht weitergekommen.
Hier ein Ausschnitt aus dem php-Code:
<h4>'.$this->getFieldHeader('tutor').'</h4> <p>'.$this->getFieldContent('tutor').'</p>
In diesem Beispiel sollen beide Absätze nur ausgegeben werden, wenn das Feld "Tutor" nicht leer ist.
Wie bekomme ich das - möglichst ohne TS - hin?
Danke,
Thomas
Na das kann doch nicht so schwer sein:
$x = $this->getFieldHeader('tutor');
if ($x) echo 'ja';
if (!empty($x)) echo 'ja'; // empty sollte auch funktionieren
if (isset($x)) echo 'ja'; // isset sollte auch funktionieren
if ($x != '') echo 'ja';
Danke für die schnelle Antwort. Vielleicht verstehe ich zu wenig von php, denn ich bekomme den gleichen "White-Screen" wie bei meinen vorherigen Versuchen.
Hier einmal der gesamte Abschnitt zum SingleView:
function singleView($content,$conf) {
$this->conf=$conf;
$this->pi_setPiVarDefaults();
$this->pi_loadLL();
// This sets the title of the page for use in indexed search results:
if ($this->internal['currentRow']['title']) $GLOBALS['TSFE']->indexedDocTitle=$this->internal['currentRow']['title'];
$content='<div'.$this->pi_classParam('singleView').'>
<H2>'.$this->internal['currentRow']['num'].' ('.$this->internal['currentRow']['year'].'): '.$this->internal['currentRow']['title'].'</H2>
<H4>'.$this->getFieldHeader('tutor').'</H4>
<p>'.$this->getFieldContent('tutor').'</p>
<H4>'.$this->getFieldHeader('description').'</H4>
<p>'.$this->getFieldContent('description').'</p>
<p align="right">Zuletzt aktualisiert am: '.date('d.m.Y',$this->internal['currentRow']['tstamp']).'</p>
<p>'.$this->pi_list_linkSingle($this->pi_getLL('back','Back'),0).'</p></div>'.
$this->pi_getEditPanel();
return $content;
}
Gruß und Danke,
Thomas
Whitescreen? Fehlermeldungen im Install Tool anschalten!