Metatags mit PHP-Script auslesen
am 12.08.2011 - 18:53 Uhr in
Hallo, leider reichen meine PHP-Grundkenntnisse nicht aus folgendes Problem zu lösen ... Ich möchte von einem neu angelegten Inhaltstyp die Metatags ausgeben lassen ... dabei sollen lediglich die ersten 350 Zeichen des Inhaltstyps field_beschreibung ausgegeben werden. Nodewords greift nicht auf diesen Inhaltstyp.
Ich habe also in die page.templ.php folgendes eingefügt:
<?php
<meta name="description" content="<?php
if ($teaser) {
echo substr($node->field_beschreibung[0]["value"], 0, 350) . '...';
} else {
echo $content;
}
?>evtl.ist das totaler Käse - aber es erklärt zumindest mein Problem. Wäre echt nett, wenn mir jemand den richtigen Schnippsel/Wink geben kann - vielen Dank Denis
- Anmelden oder Registrieren um Kommentare zu schreiben

Hmm, ich bin zwar kein
am 13.08.2011 - 11:15 Uhr
Hmm, ich bin zwar kein Programmierer.
Vermutlich meintest du die page.tpl.php.
Wäre auch schön gewesen, welche Version (5,6,7) du verwendest. Z.B. in der 7er Version würdest du das in der html.tpl.php eintragen.
Was bezweckt die if($teaser)-Abfrage?
<?php$description = substr($node->field_beschreibung[0]['value'], 0, 350);
print '<meta name="description" content="';
if ($teaser) {
echo $description . '...';
} else {
echo $content;
}
print '" />';
?>
Beste Grüße
Dirk
Alles, was an Feldern und
am 13.08.2011 - 11:31 Uhr
Alles, was an Feldern und Daten in Deinem Inhaltstyp erscheint, kannst Du mit
<?phpprint "<pre>";
print_r($node);
print "</pre>";
?>
ausgeben lassen. Einfach in die node.tpl.php oder in eine node-xxx.tpl.php ( xxx ist der Inhaltsytp ) einfügen und den Node aufrufen. Eventuell den Cache leeren.
Vielen Dank erst mal,
am 13.08.2011 - 13:04 Uhr
zumindest scheine ich auf dem richtigen Weg zu sein - jetzt schreibt er mir das, was ich möchte in die Description - das Problem - Er schreibts auch in die Seite - folglich über dem Header ... irgendwas muss noch raus - vielen Dank für einen letzten Wink - Ich werde ab nun immer fleißig PHP üben;)
<meta name="description" content="<?php echo $node->field_beschreibung[0]["value"], 0, 350 ?>" />viele Grüße Denis