PHP, Tipps, WordPress

WordPress Artikel Veröffentlichung nutzen

Nicht immer will man alles so lösen wie es WordPress vorsieht und sucht eine andere Lösung. Nicht selten muss man für diverse Anwendungen das Backend nicht nutzen um Beiträge zu veröffentlichen.
Ein einfaches Beispiel wäre ein Formular, egal wo, mit dem ein Artikel veröffentlicht wird, in dem der Inhalt der Formular an WordPress übertragen wird und automatisch veröffentlicht wird. Alternativ könnte man ihn mit einem anderen Status senden und so erst frei geben, wenn die Redaktion den Artikel frei gibt.
Um nicht bei Null mit der Überlegung zu starten, hier die Funktion die diese Mächtigkeit inne hat und für alle Prozesse der Veröffentlichung verantwortlich ist.

wp_insert_post($postarr = array(), $wp_error = false)
Weiterlesen

Standard
Themes, Tipps, WordPress

Summe der Beiträge, Seiten, Kategorien, Tags, Kommentare für das WordPress Theme

Im vorhergehenden Beitrag habe ich eine Lösung gezeigt, wie man ohne den Einsatz eines Plugins die Gesamtanzahl der Kommentare ausgeben kann, siehe Artikel „Summe der Kommentare in WordPress“. Scheinbar ist es aktuell sehr beliebt oder die Frage stand schon des öfteren und so kamen einige Anfragen per Kommentar, wie man auch andere statistische Werte auslesen kann und so im Frontend des Blog dem User mitteilen kann. Jeriko hat in den Kommentaren schon einen Hinweis gegeben der aber für den einen oder anderen nicht ausführlich genug ist, daher in diesem Artikel die Lösung.

Die folgenden Lösungen sind nur mit einer Version von WordPress größer/gleich 2.5 funktionieren. Da ich davon ausgehe, dass die meisten „Theme-Designer/-schrauber“, ihr Blog auf einer dieser Version fahren. Alternativ gern per Kommentar, dann versuche ich zu helfen.
Weiterlesen

Standard
Themes, Tipps, WordPress

WordPress Beiträge im 2-Spalten-Layout

WordPress im Zeitungsstiel
Mit CSS 3 kann man mehrspaltige Layouts gestalten, bis es so weit ist und die Anpassungen in den meisten Browsern gültig sind, kann man mit ein wenig PHP ähnliche Effekte erzielen. Eine Spielerei, die bei der Entwicklung eines Themes abgefallen ist und sehr schön die Möglichkeiten im Theme und via WordPress Hooks demonstriert.

Um die Lösung zu realisieren, muss die folgende Funktion in die functions.php des Themes. Sie analysiert den Beitrag, trennt bei Leerzeichen, errechnet dadurch die Wortzahl und teilt diese durch die 2 Spalten. Jeweils bei der Hälfte wird ein div-Container geschlossen und ein neuer eröffnet. Diese beiden Container bekommen unterschiedliche Klassen und können so per CSS formatiert werden – in zwei Spalten. An Beispiel des Standard-Layout von WordPress sieht es dann wie folgenden Screenshot aus.
Weiterlesen

Standard
Tipps, WordPress

Expliziten Inhalt in WordPress laden

WordPress vergibt für jeden Beitrag, Seite und Kommentar eine eindeutige ID in der Datenbank. Diese macht es einfach und schnell möglich, einen expliziten Inhalt aus der Datenbank zu laden.

Wozu? – Dafür gibt es eine ganze Reihe Anwendungsmöglichkeiten.
In einem konkreten Projekt wird Inhalt in den Header und Footer geladen, Text, der den Leser des Blog informiert.

Ein konkretes Beispiel ist das Blog von Shirtinator, dort wird im Header- und Footer-Bereich Inhalt aus dem Backend, aus statischen Seiten, gezogen.
Shirtinator Blog

In der Regel werden solche Texte direkt im Markup des Theme hinterlassen, was die Pflege für den Laien erschwert. Aber auch für solche Zwecke nutzt man ja ein CMS, warum also nicht einen Artikel aus der Datenbank dazu nutzen. Insbesondere eignet sich dazu eine statische Seite, die ist schnell wieder auffindbar und nicht im täglichen Artikelzoom eines Weblogs.
Weiterlesen

Standard
Webküche

10 Punkte bevor der Beitrag öffentlich wird

Veröffentlichen in WP

  1. Lies es noch mal und korrigiere eventuell.
    Im Zweifelsfall den Beitrag einige Tage liegen lassen und dann nochmals lesen – oft sehen dann logische Schlüsse anders aus.
  2. Rechtschreibung prüfen – als Hilfe kann der Google-Toolbar dienen. Fehler kommen immer vor, aber je weniger – desto besser.
  3. Der Titel des Beitrags sollte aussagekräftig sein – nicht immer leicht, aber sehr sehr hilfreich.
  4. Bilder sagen nur dem etwas, der sie sieht. Denke an die User, die den Feed ohne Bilder lesen ohne mit anderen Mitteln lesen. Ähnliches gilt für die Größe der Bilder, nicht jeder hat eine DSL6000-Verbindung. Überlege also, wie sinnvoll ist die Qualität im Vergleich zur Größe. Außerdem gehört zu jedem! Bild ein Alt-Tag.
  5. Die ersten Zeilen des Beitrags sollten Aussagekräftig sein, denn der „Teaser“ ist der Einstieg und in einigen Ansichten im Blog oder externen Services werden nur die ersten Zeilen gelistet.
  6. Du nutzt Inhalt einer anderen Quelle oder zitiertes, dann vergiss die Angabe der Quelle nicht. xHTML: q, blockquote und cite
  7. Links sind die Seele des Web, nutze Sie. Dazu zählen auch Links auf ältere Beiträge aus deinem Blog.
  8. Prüfe die Kategorie des Beitrags, ist sie sinnvoll? Einige Leser lesen nur Inhalt aus bestimmten Kategorien.
  9. Du verwendest ein Tagging-Plugin, dann pflege es auch. Vergebe Tags sparsam und treffend. Überlege die Synonyme und prüfe das Tagging.
  10. Gleiches gilt für die Vergabe von Meta-Keywords. Hat dein Blog eine solche Erweiterung, dann pflege sie und prüfe auf die richtigen Einträge.

Diese Artikel wurde zum Projekt „Blogtipps für Einsteiger“ geschrieben. Unter diesem Titel werden in den nächsten Tagen sicher eine ganze Reihe von Beiträgen erscheinen – den einen oder anderen Tipp sollte man sicher beherzigen.

Standard
Tipps, Webküche, WordPress

Tipps für das Schreiben guter WordPress Tipps

Mit diesem Thema befasst Lorelle auf Blog Herald in einem aktuellen Artikel. Angesichts der Tatsache, dass die Anzahl der Tipps zur Webpublishing Plattform WordPress immer größer wird, ist dieser Artikel recht interessant.

Der Artikel weist auf einige grundlegende Regeln hin, die man eingehalten sollte – Begründungen sind hinzugefügt und die Aussagen stehen nicht leer im Raum.

Kurz und bündig, sehen die Tipps folgendermaßen aus.

  • Schreibe WordPress, nicht WordPress!
    Der Artikel verliert an Glanz und Glaubwürdigkeit, wenn man nicht das eingetragene Warenzeichen kennt. (Fällt mir auch immer wieder in Zeitschriften und auch Büchern auf)
  • Tipps zu WordPress sollten auch auf der Plattform WordPress präsentiert werden.
  • Achte auf die Darstellung von Code. Der Code sollte fehlerfrei und sauber integriert sein, ohne Character Entities
  • Bringe es auf den Punkt. Tipps sollen helfen und nicht langatmige Geschichten erzählen.
  • Innerhalb des Beitrags ist sparsam mit Werbung umzugehen.
  • Leute kommen über Suchmaschinen auf den Artikel, sie kennen die Hintergründe des Problems nicht. Erkläre also mehr als die Lösung, erkläre wozu und warum du sie anwendest.
  • Kopiere nicht den Inhalt oder den Code anderer Beiträge, wenn es nicht eine Bereicherung gibt. Ebenso gehört es sich, die Quelle zu nennen und darauf hinzuweisen.

Der Artikel geht wesentlich tiefer und beleuchtet die verschiedenen Facetten und Hintergründe – Lesebefehl für alle, die Tipps zum Thema WordPress veröffentlichen: „Tips For Writing Good WordPress Tips“.

Standard
Plugin, WordPress

WP – Sayfa Sayaç (de) – Counter für Beiträge gelesen (Plugin)

Ein kleines Plugin sayfa-sayac von Hakan Demiray gibt es seit einiger Zeit zum Download. Mit der Version 2.0 ist der Funktionsumfang zwar enorm gestiegen, aber die Ausgabe des Counter erfolgt in Türkisch. Die Ausgabe-Begriffe wurden leider nicht mit einer Variable versehen. Da es aber nur drei verschiedene Wörter sind, habe mich entschlossen, diese zu übersetzen, statt das Plugin um die drei Variablen zu erweitern. Im weiteren wird im Adminbereich eine Statistik der meist gelesenen Beiträge ausgegeben, die Top 20.

Das original Plugin findet ihr bei Hakan Demiray.

Beispiel:

Screenshot Statistik
Click mich !

Wie das Plugin wirkt, könnt ihr unter jedem meiner Artikel sehen, in dem Bereich, wo ich ausgebe, wann der Artikel erstellt wurde, in welcher Kategorie, Trackback-Adresse etc..

Anforderungen:

Sayfa Sayac (page read counter) (de) arbeitet mit WP 1.5 und höher.

Installation:

  1. Datei downloaden und die gepackte Datei lokal entpacken.
  2. Die Datei in den Plugin-Ordner eures WordPress uploaden (/wp-content/plugins/).
  3. In der Admin-Oberfläche eures WordPress das Plugin aktivieren.
  4. Nun muss der Code in euer Template eingefügt werden, an der Stelle wo nachher die Ausgabe erfogen soll.

Der Code erfolgt nach folgendem Muster:


<?php sayfa_sayac(a, b, c, d, e, 'g', 'h','i', 'j', 'k') ; ?>
  • a – Zähler ja/ nein (1/0)
  • b – Admin Login mitzählen ja/nein (1/0)
  • c – Anzeige des Totalzählers ja/nein (1/0)
  • d – Anzeige des Tageszählers ja/nein (1/0)
  • e – Anzeige des zuletzt gelesen am ja/nein (1/0)
  • g – Anzeige, die vor der Ausgabe erfolgt
  • h – fügt Code vor den Tageszähler
  • i – wird vor jede Statistik-Ausgabe geschrieben
  • j – wird nach jede Statistik-Ausgabe geschrieben
  • k – fügt Code nach dem Zähler ein

Ich nutze folgendes Code-Schnipsel und habe ihn in das Post-Template (single.php) integriert.


<?php if (function_exists('sayfa_sayac')) : ?><?php sayfa_sayac(); endif; ?>

oder mit Übergabe von Parametern


<?php if (function_exists('sayfa_sayac')) : ?>
<?php sayfa_sayac(1, 0, 1, 1, 0, ' &middot; ', '',' &middot; ', '', '') ; ?>
<?php endif; ?>

Ein weiters Beispiel für die Verwendung von Code-Teil h – k, um alles in eine Liste auszugeben.


<?php if (function_exists('sayfa_sayac')) : ?>
<?php sayfa_sayac(1, 0, 1, 1, 1, '<br />', '<ul>','<li>', '</li>', '</ul>') ; ?>
<?php endif; ?>

Ich habe eine Statistikausgabe im Adminbereich hinzugefügt, so dass ihr eure meist gelesenen Artikel sehen könnt – die 10 Topbeiträge, zu finden auf der Startseite des Adminbereich –> Tellerrand –> PageReadCounter, ebenso die Top-beiträge pro Tag und Monat.
Über das Inputfeld können weitere Ausgaben gesichtet werden, wobei die Zahl daneben die Anzahl aller veröffentlichten Beiträge angibt.

Screenshot in WP 2.7

Die Ausgabe der Topliste kann auch in andere Seiten oder Beiträgen eingebunden werden. Dazu steht die Funktion fb_sayfa_sayac_reporter zur Verfügung. Die Funktion benötigt keinen Parameter zwingend. Alle Parameter sind mit Daten gefüllt, so dass eine Liste erzeugt wird. Die einfachste Ausgabe sieht dann folgendermaßen aus.


<?php fb_sayfa_sayac_reporter(); ?>

Ansonsten können weitere Parameter übergeben werden.


fb_sayfa_sayac_reporter(Beitragsanzahl, 'Vor dem Counterwert', 'Nach dem Counterwert', 'Vor der Ausgabe', 'Vor jedem Feld', 'Nach jedem Feld', 'Nach der Ausgabe', 'Datumsformat', 'Post_Type[post, page, Standard ist '']')

Das Datumsformat ist für die Ausgabe des Veröffentlichungsdatums des jeweiligen Beitrages. Nutze false für das Nichtausgeben des Datums, lassen den Parameter weg oder leer ('') um den Standard des Plugins zu nutzen oder übergebe das Format, siehe date()-Funktion von PHP.

Um die Ausgabe in WP-Seiten darzustellen, benötigt ihr ein php-Plugin, z.B. Exec-PHP. Alternativ kann es natürlich auch in Templates genutzt werden.
Die Darstellung mit einer Liste ist dann mit folgendem Code einzubinden:


<?php fb_sayfa_sayac_reporter($fb_count = 5, $fb_before_count = ' (', $fb_after_count = ')', $fb_before = '<ol>', $fb_before_second = '<li>', $fb_after_second = '</li>', $fb_after = '</ol>', $fb_date = 'd.m.Y', $fb_type = ''); ?>

oder ohne Variablen:


<?php fb_sayfa_sayac_reporter(5, ' (', ')', '<ol>', '<li>', '</li>', '</ol>', 'false', ''); ?>

Als Werte für den Paramter fb_type kann post, page oder '' (LEER) übergeben werden. Mit '' (LEER) werden Artikel und Seiten (post und page) gezogen.

Top Beiträge pro Tag/ Zeitraum

Die Ausgabe für eine Liste mit den Topbeiträgen pro Tag wird folgendermaßen ausgegeben.


fb_sayfa_sayac_reporter_time();

Diese Funktion hat einige Parameter, so dass man den Zeitpunkt auch ändern kann.


<?php fb_sayfa_sayac_reporter_time(Beitragsanzahl,
                              Vor dem Counterwert,
                             Vach dem Counterwert,
                                  Vor der Ausgabe,
                                   Vor jedem Feld,
                                  Nach jedem Feld,
                                 Nach der Ausgabe,
                                            Monat,
                                              Tag,
                                             Jahr,
                                          Datum,
                                             Type); ?>

Information

Per eMail hatte ich die Anfrage, ob es möglich wäre, dass nur Administratoren die Statistik sehen können. In der bisherigen Version kann sie jeder User sehen, der Zugriff in den Adminbereich hat. Ich halte einen Optionsbereich für überflüssig, der sorgt nur für mehr Daten. Wer also auch diese Einschränkung haben möchte, der ändert in Funktion:


function fb_sayfa_sayac_add_menu() {
	if(function_exists('add_submenu_page')) {
		add_submenu_page('index.php', 'sayfa sayac - Post Read Counter', 'Post Read Counter', 1, __FILE__, 'fb_sayfa_sayac_statistic');
	}
}

den Wert 1 in 9 im Hook add_submenu_page, damit können es nur Admins sehen.

Download:



Ist die Arbeit nicht 1 Euro wert?
Jede Spende wird dankbar angenommen und ermöglicht das weitere Arbeiten an freier Software.
Möchtest du mehr oder anders spenden, so besuche meine Wunschliste.

Download als zip-Datei (incl. english Language-File and pot-File): sayfa_sayac.zip – 8 kByte

Historie:

  • v2.1 – deutsche Oberfläche
  • v2.2 – Statistikauswertung im Adminbereich von WP
  • v2.3 – optimieter Code und Funktion zur freien Nutzung
  • v2.4 – Bug fixed
  • v2.5 – Komplikation mit Plugin „stats“ behoben
  • v3.0 – WP 2.1 tauglich und viele Verfeinerungen im Code, Mehrsprachigkeit
  • v3.2 – Übergabe Datum in Abhängigkeit der WP-Einstellungen, diverse Kleinigkeiten (Achtung, bei einem Update, in der Funktion sayfa_sayac ist Parameter date entfallen!)
  • v3.3 – Top Beiträge per Zeitrahmen, neuer Code zum großen Teil, Admin muss nun nicht mehr als „Name“ admin laufen, damit er nicht gezählt wird. (Achtung, Parameter der Funktion haben sich geändert!)
  • v3.4 – DB-Abfrage optimiert, wesentlich weniger Queries in der …reporter()
  • v3.5 – post/page Bug gefixt, WP 2.5-2.7 Design, Prüfung auf Backend, Ausgabe im Backend erweitert
  • v3.5.1 – Mehrsprachigkeit, deutsches Sprachfile
  • v3.5.2 – Icon für WP 2.7, Statistik link in Plugin-Site
  • v3.5.3 – Parameter zu beiden Funktion für das Datum
  • v3.5.4 – Bugfixe img-URL, Erweiterung tägl. Liste im Admin.
  • v3.5.5 – Mehrsprachigkeit des Datums ermöglicht
  • v3.5.6 – Neue Paramter für Page/Post/All, Änderung Auswertung Backend, Anpassung für WP 2.8 (10/06/2009)
  • v3.5.7 – Bugfix, Übergabe Parameter; Zusätzliche Filter für Title (11/08/2009)
Standard
Tipps, WordPress

WP – Die letzten 15 Beiträge

Für einige WP-Anwender ist es umständlich oder unübersichtlich nur die letzten 15 Beiträge in Admin-Oberfläche zu sehen. Wer des öfteren auf ältere Artikel zu greifen muss, den stört diese geringe Anzahl.
Um diese Anzahl zu ändern, genügt ein kleiner Eingriff in die edit.php in wp-admin.

Achtung:

Dadurch werden die Standard-Dateien (Core) von WP verändert, in diesem Fall die edit.php. Durch diesen Eingriff kann nicht so einfach ein Update von WP durchgeführt werden. Fertigt in jedem Fall vorher eine Kopie eures Blogs und der Datenbank an.

Die notwendige Größe wird in Zeile 59 (WP 2.0.1) geändert. Ändert die 15 auf euren Wunschwert.


<?php $what_to_show = 'posts'; $posts_per_page = 15; $posts_per_archive_page = -1;

Die Überschrift stimmt dann natürlich nicht mehr mit der Anzahl überein. Um diese anzupassen muss noch in Zeile 72 (WP 2.0.1) der Text „Last 15 Posts“ geändert werden. In diesem Fall muss der komplette String geändert werden, da die Übersetzungsdatei (.mo) nur auf den Original-String zugreifen kann.


if ( is_single() )
	printf(__('Comments on %s'), $post->post_title);
elseif ( ! is_paged() || get_query_var('paged') == 1 )
	_e('Last 15 Posts');
else
	_e('Previous Posts')
Standard
Tipps, WordPress

WP – Javascript in Beiträge/ Posts einbinden

WordPress+JavaScriptWenn in Beiträgen, unter WordPress, Scripte benötigt werden, so kann man diese nicht direkt in den Post legen. Diese werden im Header nicht ausgeführt. Nun will man aber nicht jedes Script im Header haben, da es ansonsten in jeder WP-Seite und jedem WP-Beitrag erscheint. Einige Scripte werden nur auf bestimmten Seiten oder Beiträgen benötigt.
Mit folgender Methode können aber Scripte in den Posts verwendet werden.

Als erstes muss das Script in eine Datei (name.js) geschrieben werden. Diese Datei muss nun per FTP abgelegt werden, bzw. mit der Upload-Funktion in der Admin-Oberfläche von WP. Die Funktion wird also ausgelagert.

Info: Das folgende Script dient dazu, Plugins automatisch in Firefox zu integrieren und dient mir hier als Beispiel. Nähere Infos dazu hatte ich vor einiger Zeit hier beschrieben.

externes Script:


function addEngine(name,ext,cat)
{
  if ((typeof window.sidebar == "object") && (typeof
  window.sidebar.addSearchEngine == "function"))
  {
    window.sidebar.addSearchEngine(
      "https://bueltge.de/wp-content/download/wp/"+name+".src",
      "https://bueltge.de/wp-content/download/wp/"+name+"."+ext,
      name,
      cat );
  }
  else
  {
    errorMsg(name,ext,cat);
  }
}

Das ausgelagerte Script muss nun wieder in den Beitrag geladen werden.
Im Beitrag wird das ganze dann folgender maßen eingebunden.

im Post:


<script type="text/javascript" src="/ordner/addengine.js"></script>

<a href="javascript:addEngine('search_bueltge_blog','gif',
'bueltge.de Blog')">Test_JS_Link</a>

Hier ist der Link um das Beipiel-Script „SuchPlugin für Firefox“ zu starten.


Test_JS_Link

Standard