kick-image.at - Webdesig | CMS | Printdesign, c/o Reynhard Boegl, A - 4020 Linz, Herrenstrasse 7, Tel.: +43 (0)676 75 63 079, Web: www.kick-image.at

kick-image

High End Webdesign

WordPress: Beiträge auf externen Seite auflisten

Oft gefragt – aber leicht gemacht: das Anzeigen der z.B. letzten beiden Beiträge auf einer externen, nicht zum WordPress- Weblog gehörenden Seite in Datum und Überschrift.

Tutorial mit Beispiel-Download:

Es wird dies ein externes Tool, welches nach Abmelden aus dem Admin-Bereich automatisch seine Arbeit verrichtet. Datum und Beitrags-Titel werden in eine Text-Datei geschrieben. Diese kann dann – ohne Zuhilfenahme der Datenbank – in jede beliebige Seite eingebunden werden.

Download: wp_aktuelle_blogthemen.zip


Dies passiert in der Datei “aktuelle_blogthemen.php”:

Da es sich um ein externes Tool handelt wird hier der WP-Header mitsamt seinen Funktionen geladen:
require_once("wp-blog-header.php");

Hier wird festgelegt wieviele Beiträge eingebunden werden – “1″ ist der Neueste:
query_posts('showposts=2');

Pfad und Name der Textdatei in die die gewünschten Daten geschrieben werden – benötigt u.U. Schreibrechte:
$textdatei ="aktuelle_blogthemen.txt";

Falls nach Beendigung des Scriptes auf eine Seite (z.B. auf die in der die Text-Datei eingebunden wird) weitergeleitet werden soll ist diese Adresse hier anzugeben:
$weblogadresse = "";

Das wars mit den Grundeinstellungen!

Und das passiert weiter:

Diese Zeilen leeren die aktuelle Text-Datei
$fh=fopen($textdatei, 'w+');
fclose($fh);

und hier wird der “Loop” gestartet:
if (have_posts()) {
while (have_posts()) {

Interessant wird es wieder bei den nächsten Zeilen!

Je nach Vorstellungen werden hier die Daten zusammen gestellt. In der Datei “aktuelle_blogthemen.php” sind einige Beispiele aufgeführt – einfach nach Lust und Laune aktivieren und unpassende auskommentieren!
Beipiel: “Definition List” mit Datum und Perma-Link:
$schreibinhalt = "<dt>".get_the_time('d|m')."</dt>\r\n<dd><a href=\"".get_permalink().the_title('">','</a>', false)."</dd>\r\n";

Danach wird in die geleerte Text-Datei bei jedem Loop- Durchgang ein neuer “Satz” Daten an das Ende geschrieben – bis der Loop zu Ende ist, also wenn die festgelegte Anzahl der Beiträge durch ist:
$fh=fopen($textdatei, 'a+');
fwrite($fh, $schreibinhalt);
fclose($fh);

Ist das ganze Script abgearbeitet kommt der “Header” – Aufruf zu tragen: die oben festgelegte Seite wird aufgerufen:
if ($weblogadresse) {
header("Location:$weblogadresse");
}

Gut, da ist noch keine Änderung zu merken!

Die soeben erstellte Text-Datei muß ja noch eingebunden werden! Den folgenden Code in die gewünschte PHP-Datei kopieren (geg. Pfad anpassen): <?php readfile ("_aktuelle_blogthemen.txt"); ?>

Fertig! Die letzten beiden Weblog- Einträge werden mit Datum und Titel inkl. Verlinkung dargestellt.

Das Ganze passiert aber nur nach Aufruf des Scriptes, eine Automatisierung könnte praktisch sen…

Hierfür muß etwas an den WP- Dateien geändert werden:

In der Datei “wp-login.php” (liegt meist im Root-Verzeichnis des Weblog) suchen wir uns die Stelle:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org ...

Davor wird folgender Code reinkopiert:
<?php
if ($loggedout=="true") {
header("Location:_aktuelle_blogthemen.php");
}
?>

Dies bewirkt eine automatische Umleitung auf unser neues Script wenn man sich aus dem Weblog abmeldet (wieder geg. Pfad anpassen). Daraufhin wird das Script abgearbeitet, die Text-Datei wird neu geschrieben und die (optional) angegebene “Weiterleitungs-Adresse” wird aufgerufen.

Dadurch das ein “Loop” gestartet wurde sind eigentlich alle von WordPress gelieferten Inhalte greifbar. Die zu schreibenden Daten können auch Anderes beinhalten – was ist unter codex.wordpress.org/Template_Tags nachlesbar.

  • Beitrag bei facebook posten
  • Beitrag bei twitter posten
  • Diese Seite mit anderen teilen - 'Social Bookmark Dienste'

WordPress: verschiedene Layouts bei EinzelbeiträgenWEBTOOL: Gallery Framework

Weitere empfohlene Beiträge

Archiv / Übersicht

zur Weblog Startseite

2011

2010

2009

2008

2007

2006

Kommentare