Beiträge einer Kategorie aus WordPress Loop ausschließen

Es gibt verschiedene Gründe, warum es sinnvoll sein kann Beiträge einer bestimmten Kategorie aus dem WordPress Loop auszuschließen. Werden die Beiträge in anderer Form beispielsweise bereits an anderer Stelle angezeigt, will man sie natürlich nicht im Artikelstream erscheinen lassen. Mit folgendem Code kann dies z.B. in der index.php des Themes gelöst werden. Das Beispiel ist der Übersichtlichkeit halber auf die Ausgabe von Titel und Artikelinhalt begrenzt. Der Einsatz weiterer Funktionen ist möglich.

< ?php
/* Beginn des Loops */
if (have_posts()) :
while (have_posts()) : the_post();

/* Ausschluss der Kategorie. Hier die gewünschte Kategorienummer eintragen, z.B. 74. */	
if ( !in_category('74') ) { 
?>

>

< ?php the_title(); ?>

< ?php the_content('Beitrag weiterlesen »'); ?>
< ?php } ?>

Es ist auch möglich mehrere Kategorien auszuschließen.

< ?php
if ( (!in_category('76')) && (!in_category('53')) ) { }
?>

Vorschau auf WordPress 3.3

Nachdem die sich derzeit in Entwicklung befindliche Version 3.3 der Content Management- und Blogsoftware WordPress in den sogenannten “Feature Freeze” gegangen ist und heute einige tiefgreifende Javascript-Änderungen eingepflegt wurden wird es Zeit einen Blick auf sie zu werfen. Die neue Version soll am 15. November 2011 erscheinen und bringt einige interessante Neuerungen mit sich. So erhält beispielsweise der Administrationsbereich ein responsives Layout und der Medienuploader wird stark verbessert. Ein neues Tipps-Feature soll besonders Anfänger nach einer ersten Installation an die Hand nehmen. Diese und weitere Neuerungen sind in einem Artikel im WordPress Development Channel zusammengefasst. In deutscher Sprache gibt es z.B. hier und hier einige Informationen.

Video on Vimeo [WordPress 3.3 sneak preview]

The Who – Won’t get fooled again

Gut 30 Jahre ist dieses Stück Musik(geschichte) alt und mittlerweile läuft Horatio Caine in CSI: Miami dazu auf.

Video auf YouTube ansehen

RSS Feeds ohne Plugin in WordPress ausgeben

Gerade selbst benötigt und deshalb kurz notiert: In WordPress lassen sich mit der Funktion fetch_rss sehr leicht RSS-Feeds aller Art ausgeben. Vor geraumer Zeit brauchte das noch ein Plugin. Mit folgendem

include_once(ABSPATH . WPINC . '/rss.php');
// Hier die URL des Feeds angeben
$rss = fetch_rss('http://metafakten.de/feed/');
// Hier die gewünschte Beitragszahl angeben
$maxitems = 4;
$items = array_slice($rss->items, 0, $maxitems);

Im Folgenden wird das RSS-Feed in einer Liste mit Überschrift ausgegeben.

Neuigkeiten von metafakten

Das Ganze im Original findet sich im WordPress Codex. Eine ähnliche Möglichkeit bietet wp_rss, dass aber weniger flexibel in der Darstellung ist.

Kommentare bei WordPress im RSS-Feed verlinken

Von WpRecipes kommt eine simple Anleitung, wie ein Artikels im Feed verlinkt werden kann. Die PHP-Abfrage klärt ob es für den Nutzer möglich ist zu diesem Beitrag einen Kommentar abzugeben und verlinkt daraufhin den Artikel. Meiner Meinung nach ist es sinnvoll direkt auf den Kommentarbereich zu verlinken, der oft durch die ID “#comments” als Anker markiert ist. Folgender Code kommt zu diesem Zweck in die Datei functions.php im Ordner des verwendeten Themes:

function rss_comment_footer( $content ) {
    if ( is_feed() ) {
        if ( comments_open() ) {
            $content .= "\n\nKommentiere diesen Artikel
jetzt hier\n";
        }
    }
    return $content;
}

WordPress 2.6.1 mit verbessertem Medienupload

Mit 55 Fehler- und Performancefixes und sechs Neuerungen wurde soeben die neue Version von WordPress – 2.6.1 – veröffentlicht. Die wohl interessanteste für Nutzer wird die beim Hochladen von Medien sein: Dort ist es jetzt auch möglich außerhalb der dem Artikel, respektive der Seite, zugeordneten Medien nach Bildern und weiteren Dateien zu suchen. Die neue Version gibt es hier. Update: Und die deutsche Version fix nachgeschoben.

Template für Seite mit Unterseiten in WordPress erstellen

Für ein aktuelles Projekt bin ich auf die Begebenheit gestoßen, dass eine statische Seite mit vielen Unterseiten existierte, und diese Unterseiten alle von Hand als Liste verlinkt waren. Das geht natürlich einfacher, und ohne, dass ich nach jeder Änderung an einer Unterseite diese händisch erstellte Liste bearbeiten muss. Die Lösung ist eine Seitenvorlage (Template), die ich in diesem Beispiel in eine Datei namens seitemitunterseiten.php packe. Hier eine Schritt für Schritt Anleitung:

  1. Datei seitemitunterseiten.php erstellen und diese in einem Texteditor öffnen
  2. mit folgendem Code starten, um die Seitenvorlage zu benennen und als solche zu kennzeichnen
    < ?
    /*
    Template Name: Seite mit Unterseiten
    */
    ?>
  3. den Code aus der page.php im Ordner des verwendeten Themes komplett in die seitemitunterseiten.php kopieren
  4. den Bereich suchen, in dem der Inhalt ausgegeben wird, zumeist in der Form
  5. darunter folgendes einfügen, um die Liste der Unterseiten anzuzeigen:
    < ?php
    wp_list_pages('title_li=&child_of='.$post->ID.'&sort_column=menu_order');
    ?>
  6. die Datei seitemitunterseiten.php speichern und in den Ordner des aktuell verwendeten Themes hochladen
  7. nun kann die Seitenvorlage “Seite mit Unterseiten” im Editor ausgewählt werden

Nähere Information zur Funktion wp_list_pages im Codex.

Deutsche Sprachdatei für InstantUpgrade – WordPress aktualisieren mit einem Klick

InstantUpgrade ScreenshotInstantUpgrade ist ein Plugin für WordPress, dass viele sicher lange gesucht haben. Das Löschen der alten, und das Hochladen der neuen Dateien bei der Aktualisierung von WordPress auf eine neue Version (z.B. der kommenden) gehört der Vergangenheit an. Ist das Plugin konfiguriert ist das Upgrade nur noch einen Klick entfernt. Derzeit ist die 1.0er-Version dieser nützlichen Erweiterung noch im Beta-Status. Wer es trotzdem nutzen will, und das ganze noch auf Deutsch, dem stelle ich hier eine Sprachdatei zur Verfügung: iu-de_DE.mo. So wird InstantUpgrade deutschsprachig:

  1. Datei iu-de_DE.mo im Ordner /wp-content/plugins/instantupgrade/lang/ speichern
  2. in der Datei init.php die Auskommentierung der Zeile 43 entfernen (“//” löschen), so dass die Zeile so aussieht:
    load_plugin_textdomain('iu', 'wp-content/plugins/instantupgrade/lang');

In der finalen Version von InstantUpgrade wird laut Entwickler Alex Günsche eine Sprachdatei enthalten und ohne die Bearbeitung der init.php-Datei laufen.

WordPress Version 2.5 – Release Candidate 1 veröffentlicht

Um die wartende WordPress-Gemeinde zu beruhigen wurde heute auf wordpress.org ein Release Candidate für die neue Version 2.5 veröffentlicht. Zusammen mit der deutsche Sprachdatei ist das dann schon beinahe das Endprodukt.

Theme Fluency für den WordPress Administrationsbereich

Screenshot FluencyWer sein WordPress im Administrationsbereich künftig komplett umgestaltet erleben möchte, und wem das alte, wie das kommende Design einfach zu blau ist, dem sei ein Blick auf Fluency empfohlen. Der australische Entwickler Dean Robinson stellt das Theme, das jedoch erst mit der bald erscheinenden Version 2.5 nutzbar ist, kostenlos bereit. Besonders nützlich ist, dass Fluency keine Eingriffe in WordPress erfordert und als Plugin installiert werden kann. Mit der deutschen Sprachdatei arbeitet das Theme übrigens – auf den ersten Blick – problemlos zusammen.