Kann mir jemand diesen code (für einen php neuling erläutern

if (empty($vars['title'])) { $title = $vars['config']->sitename; } else if (empty($vars['config']->sitename)) { $title = $vars['title']; } else { $title = $vars['config']->sitename . ": " . $vars['title']; }
ich möchte gern das seitenname nur auf der start seite ausgegeben wird.
weiß nicht wie ich das umsetzen kann.
da ich den code oben nicht mal verstehe. :unamused:

kann mir da jemand bei behilflich sein?

vieln lieben dank fürs lesen.

wo wird denn die seite gehostet ?

[quote=„Sandra84“]if (empty($vars['title']))[/quote]Überprüft, ob $vars[‚title‘] leer ist. Ist dem so, dann wird $title aus $vars[‚config‘] herangezogen:[quote] {
$title = $vars[‚config‘]->sitename;[/quote]
Sollte $vars[‚title‘] leer sein, wird $vars[‚config‘] auf die gleiche Weise geprüft und $vars[‚title‘] herangezogen:[quote]
} else if (empty($vars[‚config‘]->sitename)) {
$title = $vars[‚title‘];[/quote]
Ist keine von beiden leer, dann wird $title aus beiden Elementen zusammengesetzt:[quote]
} else {
$title = $vars[‚config‘]->sitename . ": " . $vars[‚title‘];
}[/quote]

[quote]weiß nicht wie ich das umsetzen kann.
da ich den code oben nicht mal verstehe. :unamused: [/quote]
Dazu musst du nur zusätzlich prüfen, ob $vars[‚title‘] gleich deinem Titel der Startseite ist.

[quote]kann mir da jemand bei behilflich sein?

vieln lieben dank fürs lesen.[/quote]
Hoffentlich hat es geholfen.

Dieser Code erfüllt eindeutig nicht immer die Aufgabe zu die er gedacht ist, außerdem ist er so auch nicht lesbar. Stattdessen würde ich es so machen:

$title = array();

if(!empty($vars['config']->sitename))
   $title[] = $vars['config']->sitename;
if(!empty($vars['title']))
   $title[] = $vars['title'];

if(empty($title))
  $title = "No Title: Error building title";
else
  $title = implode(":", $title);

Gibt auch noch genug andere Methoden, aber so ist zumindest sichergestellt, dass immer ein Titel vorhanden ist. Es würde auch ohne Array mit if, elseif, elseif, else gehen.

if(!empty($vars['config']->sitename) && !empty($vars['title']))
   $title = $vars['config']->sitename . ": " . $vars['title'];
elseif(!empty($vars['config']->sitename))
   $title = $vars['config']->sitename;
elseif(!empty($vars['title']))
   $title = $vars['title'];
else
  $title = "No Title: Error building title";

Meiner Meinung nach sieht das erste aber schöner aus.