Wenn man PHP-Code bzw. bestehende oder neue PHP-Dateien in WordPress einbinden möchte, macht man das am besten im aktuellen Theme von WordPress. Man legt ein sogenanntes Seiten-Template an, welches man bei der Bearbeitung der Seite in WordPress wählen kann. In diesem Template befindet sich dann das gewünschte PHP-Script.
Lege eine neue Datei im Theme-Ordner unter wp-content/theme/
<?php /* Template Name: DeinTemplate-Name */ ?> <?php get_header(); ?>
<?php if (have_posts()) : ?> <?php while (have_posts()) : the_post(); ?>
<div class="post page"> <h2><?php the_title(); ?></h2> <?php the_content(); ?> </div>
<?php endwhile; ?> <?php endif; ?>
<?php echo "Hier kommt mein tolles PHP-Script bzw. der PHP-Code rein!"; ?>
<?php get_footer(); ?>
Wichtig hierbei ist der Kommentar, der unbedingt enhalten sein muss. WordPress erkennt anhand des Strings "Template Name", das es sich um ein Template handelt. Die Funktion get_header bindet das Header Template ein (wie gewohnt) und die Funktion get_footer das Footer-Template. Nach dem Header wird mit den Post-Funktionen der Inhalt der Seite, also die Headline und der Text, ausgelesen.
Anstelle des echo-Befehles (Hier kommt mein…) kann jetzt gewünschter PHP-Code eingefügt werden.
Jetzt kannst du im WordPress-Admin in der Seiten-Verwaltung unter "Seiten" ganz normal eine Seite anlegen und auf der rechten Seite neben dem Formular das erstellte Seiten-Template mit dem Namen aus dem Kommentar auswählen. Seite veröffentlichen und schon wird der Code (der hoffentlich fehlerfrei ist) auf der erstellten Seite ausgeführt.
Das Verfahren kann man natürlich beliebig weiterführen und komplexere Anwendungen in das Template einbinden. Das kurze Tutorial hier soll lediglich als Einstieg in dieses Thema dienen.
Mehr Info bei WordPress: Theme-Page-Templates
Stefan
2. VERBESSERUNGS-Vorschlag:
Als relativ neuer WordPress Benutzer hatte ich 'wp-content/theme//' für einen Tippfehler gehalten, es gab in meinem Baum 'wp-content/themes/'
Nach längeren Suchen, weshalb es bei mir nicht funktionierte, wurde mir schließlich die Lösung klar:
'wp-content/theme//' meint 'wp-content/NAME_DES_VERWENDETEN_THEMES/'
Deshalb wäre für mich deutlicher anstelle von
"Lege eine neue Datei im Theme-Ordner unter wp-content/theme//deintemplate.php mit folgendem Inhalt an:"
die Zeile gewesen:
"Lege eine neue Datei im Theme-Ordner unter wp-content//deintemplate.php mit folgendem Inhalt an:"
Stefan
'wp-content/themes/NAME_DES_VERWENDETEN_THEMES/'
lauten.
Christoph
Armin
Gruß von Armin
Marcel Diaz
Conny
das klappt super. Ich habe es im Root Verzeichnis des Templates gespeichert.
Leider passiert es, dass wenn das Template aktualisiert wird, die von mir erstellten Dateien gelöscht werden. Hast du eine Idee wie man das umgehen kann?
Benutze das Vantage Template.
Luis Kalckstein
Speicher dir das template einfach ab irgendwo
Conny
Danke für deine Antwort. Ich habe den Anfänger Fehler gemacht und habe es direkt im Template ausgeführt.
Beim Template Update wurde es dann gelöscht.
Ich habe dann ein "Child" Template angelegt womit es dann geklappt hat.
Marcus
klasse Tipp, hat mir sehr geholfen!
Vg Marcus
Martin Scheidegger
Joachim Schröter
Nico
vielen Dank, das freut mich.
Viele Grüße
Nico
Lars Pilawski
Axel
Leider komme ich aber mit getheader() / getfooter() nicht zum Ziel.
Das scheint wohl mit dem Headway-Theme zusammen zu hängen, oder?
Hat jemand eine Idee?
Axel
Funktioniert soweit.
Nur was muss ich beachten, wenn ich das Headway-Theme benutze?
Denn da scheint get_header() und get_footer() so ohne Weiteres nicht zu greifen.
Vielen Dank und Gruß,
Axel
Robert
Peter
http://plugins.trac.wordpress.org/wiki/RunPHP
Marina
LG Marina
dtray
Carsten
Marco
rossixx
man kann in einer bestimmten datei, an der richtigen stelle was rein bringen.
is aber nicht ganz so einfahc erklärt.
Mirco Stöpke
Du hast mit deinem Artikel genau DAS auf den Punkt gebracht, was ich gesucht habe und hast mir damit sehr geholfen!
Danke dafür noch mal!!!
ToM
rossixx
z.b. eine seite ist schon vorhanden, soll aber durch ein inlcude("meine_fotoshow"); ergänzt werden !!!
wp-popular.com » Blog Archive » Wordpress: PHP-Code und PHP-Script einbinden | Stetix
Was denkst du?