Webdesign, WordPress Programmierung, Online und Social Media Marketing - Dienstleistungen & Blog

Untertitel für die WordPress Artikel und RSS Feeds – Subtitle ohne Plugin

subtitle

Vor einiger Zeit schrieb Piet über ein sehr interessantes Plugin, mit welchem man seine Blogartikel mit Untertiteln versehen kann. Aber nicht nur für die Artikel gibt es Untertitel, sondern auch die Option diese in den RSS Feeds mit anzeigen zu lassen. Da ich persönlich für mich ja gerne “ohne Plugins” Lösungen implementiere, gab mir Piet auch gleich den Link zum Artikel von Elektroelch, auf dem die Implementierung der Untertitel ohne Plugin (via benutzerdefinierten Feldern) beschrieben wurde. Als ich das Ganze aber bei mir anlegen wollte, funktionierte die dort beschriebene PHP Abfrage nicht wirklich.

Also stand mal wieder selber machen auf dem Programm. Ein bisschen eleganter in der Abfrage und Implementierung gelöst, so dass die Untertitel auch nur angezeigt werden wenn sie vorhanden sind und nicht zum Beispiel eine leere CSS Formatierung für Zwischenräume sorgt, die wir dort gar nicht haben wollen.

Damit die Untertitel für die WordPress Artikel und auch für die RSS Feeds möglich sind, greife ich an 3 Stellen ein: Zwei Funktionen in der function.php des Themes sorgen für die Implementierung der Subtitle. Eine CSS Formatierung in der style.css des Themes sorgt für die richtige Darstellung. Und last but not least rufe ich die Funktion an beliebigen Stellen in meinen Theme Dateien auf (z.B. in der single.php).

Benutzerdefiniertes Feld für die Untertitel anlegen

Als allererstes muss das benutzerdefinierte Feld Untertitel angelegt werden. Dazu einfach in einen Artikel gehen und im Bereich Benutzerdefinierte Felder das neue Feld Untertitel hinzufügen:
benutzerdefiniertes Feld anlegen

Subtitle Funktionen für die functions.php im WordPress Theme

In die functions.php des WordPress Themes (bitte nicht in die WordPress Core Dateien) kommen die folgenden beiden Funktionen, wobei eine für die Untertitel der Artikel und eine für die RSS Feeds ist:

//Untertitel für die Artikel
function my_subtitle() {
 global $id, $post_meta_cache;

 if ($my_subt_values = get_post_custom_values('Untertitel')) {
  foreach ($my_subt_values as $key => $value) {
  echo "<div class='subtitle'><h3>$value</h3></div>";
  }
 }
}

//Untertitel für die RSS Feeds
function my_subtitle_feed() {
 global $post;
 $title = get_the_title();

 if ($my_subt_values = get_post_custom_values('Untertitel')) {
  foreach ($my_subt_values as $key => $value) {
   $subtitle = esc_html(strip_tags($value));
  }
 }
 if ($subtitle != '') {
  $title .= ' - ' . $subtitle;
 }
 return $title;
}
add_filter('the_title_rss', 'my_subtitle_feed');

CSS Formatierung für die Untertitel

Damit die Untertitel der Artikel auch nach belieben Formatiert werden können, gibt es die Klasse subtitle und den h3 Tag. Diesen in die style.css mit den gewünschten Formatierungen eingeben, z.B.:

.subtitle h3 {
 font-size:14px;
 margin-top:3px;  }

Einbau der Untertitel in die Artikel

Am Ende muss die Funktion in den Blogartikeln selbst noch aufgerufen werden. Das geschieht z.B. in der single.php an gewünschter Stelle über den Aufruf folgenden Codes:

<?php if (function_exists('my_subtitle')) { my_subtitle(); } ?>

Wer möchte, kann das Ganze natürlich auch in der index.php, archive.php etc. integrieren.

Nun steht dem Einsatz von Untertiteln in den Artikeln nichts mehr im Wege. Und… sie werden auch in den RSS Feeds angezeigt (direkt an den Titel rangehängt, getrennt mit einem -). Mir persönlich gefällt diese Funktion sehr gut und in einigen meiner WordPress Blogs kommen die Untertitel auch so zum Einsatz.

Dieser Artikel hat Dir gefallen? Dann würde ich mich über eine Empfehlung freuen:

Google +1
3
Twittern
8
Facebook Share
1
Lesetipps mit ähnlicher Thematik:
  • Gern verwendete Suchbegriffe:
  • wordpress subtitle hinzufügen
  • wordpress unterüberschrift für artikel
3 Kommentare:
  1. Jan — 29.01.2012, 14:04 Uhr:

    Bei einem aktuellen Projekt brauchte ich auch Untertitel (jedoch als Grafiken). Diese habe ich in Erinnerung an diesen Artikel auch als benutzerdefiniertes Feld umgesetzt (allerdings aus Faulheit mit dem Plugin custom-field-template), deswegen Danke für den Artikel.

  2. Tanja — 30.01.2012, 19:27 Uhr:

    @Jan: Immer doch gerne. Benutzerdefinierte Felder sind ja nicht wirklich schwer umzusetzen. Dafür braucht es eigentlich keine Plugins.

  3. Jan — 30.01.2012, 20:10 Uhr:

    Jein. Klar kann man diese im Theme umsetzen. Meiner Meinung nach gehören sie dort jedoch nicht hin, deswegen halte ich den Einsatz eine Plugins für sinnvoller. Das Plugin custom-field-template hat halt auch den Vorteil, daß ich die Aktivierung komplett per UI vornehmen kann, ohne jeglichen Code erstellen zu müssen.

Hinterlasse einen Kommentar

Dieser Artikel ist älter als 30 Tage! Aufgrund des hohen Spam Aufkommens wurde die Möglichkeit Kommentare mit Link zu hinterlassen deaktiviert!

» nach oben springen «
Blogverzeichnis - Blog Verzeichnis bloggerei.de    BlogPingR.de - Blog Ping-Dienst, Blogmonitor