Du fragst Dich vielleicht: “Warum soll ich pagebar benutzen, die neueren Versionen der WordPress Standard-Themes enthalten doch bereits eine Seitennavigation.” Hier ist ein Beispiel, das Dich vielleicht überzeugt, das pagebar die bessere Wahl ist.
Continue reading Nutze pagebar für eine bessere Seitennavigation
Category: WordPress
Neue Version von pagebar veröffentlicht (v2.60)
Wie sich leicht aus dem Titel schließen lässt, handelt es sich bei der neuen Version nicht um v3.0, wie ich für diesen Sommer eigentlich geplant hatte. Prokrastination pur!
1.
Stattdessen gibt es ein “kleines Update” auf v2.60 mit einigen Features, die leicht einzubauen waren. Zuerst enthält das Plugin einen neuen Default-Stil basierend auf CSS3:
Um das neue Layout zu aktivieren muss man die Datei
pagebar.css
in das aktuelle Theme-Verzeichnis kopieren.
2.
Ich habe mir die Empfehlung von Pippin zu Herzen genommen und einige Aktionen eingebaut:
- pagebar_before/pagebar_after (Diese Aktion wird bei jedesmal ausgeführt.)
Zusätzlich hat jede “Bar” ihre eigenen Aktionen:
- postbar_before/postbar_after, commentbar_before/commentbar_after, multipagebar_before/multipagebar_after
3.
Ein Hauptproblem von pagebar war, dass das automatische Einsetzen der pagebar auch bei sekündären Queries ausgelöst wurde, wie es von vielen Themes genutzt wird, um z.B. “Neueste Artikel” im Sidebar anzuzeigen. Seit der WordPress-Version 3.3 existiert die function “is_main_query()"
, womit es jetzt möglich ist, pagebar nur einmal unter der Haupt-Query anzuzeigen. Ich hoffe, das funktioniert auch mit allen Themes, da @toscho meinte, es könne damit evtl. Probleme geben.
4.
Schließlich gibt es eine neue Sprachdatei: Rumänisch (ro_RO). Die Datei habe ich schon vor Ewigkeiten erhalten, ich bitte Web Geek Science um Entschuldigung.
Links:
WordPress: Artikel in der Vergangenheit veröffentlichen
Es kann Situationen geben, in denen man einen Artikel in der Vergangenheit, also mit einem Datum vor dem heutigen Tag, veröffentlichen möchte. Auf den ersten Blick bietet WordPress keine Option, die dies ermöglicht, Auf den zweiten Blick findet man aber auf der Seite “Neue Artikel erstellen” in der Metabox “Publizieren” folgenden Eintrag:
Wenn man auf Editieren klickt, erscheint ein Feld, in dem man das gewünschte Veröffentlichungsdatum angeben kann:
Hier kann man nicht nur ein Datum in der Zukunft angeben, sondern auch ein Datum in der Vergangenheit. Hat man das Datum eingegeben, sollte man nicht vergessen OK zu drücken, da sonst das Datum bei der Veröffentlichung nicht übernommen wird:
Drückt man jetzt auf Veröffentlichen wird der Artikel sofort mit dem oben eingestellten Datum veröffentlicht und entsprechend in die Artikelreihenfolge einsortiert.
Update: Monika Thon-Soun hat mich darauf hingewiesen, dass diese Vorgehensweise nicht unbedingt zu empfehlen ist, wenn man Wert auf eine gute Platzierung in Suchmaschinen legt, weil der nachträgliche Eintrag diese wohl verwirrt.
WordPress: IDs *aller* Post-Tags ermitteln
WordPress enthält eine Funktionen, um die Tags die zu einem Artikel gehören zu ermitteln (get_the_tags
), es gibt allerdings keine Funktion, die alle auf der Webseite vorhandenen Tags ermittelt.
Die Lösung ist relativ einfach, wenn man daran denkt, dass Tags lediglich vordefinierte Taxonomien sind und man die zugehörigen IDs mit der Funktion get_terms bestimmen kann:
$tag_ids = get_terms( 'post_tag', array('fields' => 'ids', 'get' => 'all' ) );
Lustigerweise enthält WordPress eine Funktion, um die IDs aller Kategorien zu erhalten (get_all_catgory_ids).
WordPress: Aufregen über schlecht programmierte Plugins
Neulich stolperte ich über ein Plugin, das einen wirklichen Mehrwert liefert, aber leider so miserabel programmiert ist, dass ich niemanden mit gutem Gewissen den Einsatz empfehlen kann. Obwohl es schon eine größere Anzahl von “You’re doing it wrong”-Blogartikeln gibt, muss ich einfach einen weiteren Artikel darüber schreiben, da dieses nicht näher benannte Plugin so viele Dinge gleichzeitig falsch macht.
Continue reading WordPress: Aufregen über schlecht programmierte Plugins
Einfachere Plugin-Entwicklung durch Verschieben des Plugin-Verzeichnisses
Als erfahrener Plugin-Programmierer testet man seine Plugins nicht nur mit der allerneuesten WordPress-Version, sondern auch mit vorherigen Versionen, denn es gibt eine Menge älterer WordPress-Installationen. Man hat also die verschiedensten Versionen auf dem Entwicklungsserver installiert und möchte sein neuesten Codeänderungen mit jeder dieser Versionen testen. Continue reading Einfachere Plugin-Entwicklung durch Verschieben des Plugin-Verzeichnisses
Die geheimnissvolle Selectbox in WordPress
Neulich wollte ich auf der Optionsseite eines Plugins eine Selectbox mit 5 Einträgen erstellen. Nicht einfacher als das:
Jeder, einschließlich mir, erwartet folgende Ausgabe:
Tatsächlich wird aber folgendes angezeigt:
Das Geheimnis liegt im stylesheet des Admin-Bereichs:
#wpcontent select {
padding: 2px;
height: 2em;
font-size: 12px;
}
Dadurch wird jede Selectbox auf einen Eintrag reduziert. Warum dies so definiert ist bleibt mir schleierhaft. Zu diesem Thema existiert auch ein Ticket im WordPress-Trackingsystem, in dem das Problem seit zwei Jahren diskutiert wird.
Die Lösung des Problems ist relativ einfach:
Sieht einfach aus, hat mich aber eine Stunde meiner Lebenszeit gekostet.
WordPress: Neuladen von Skripts und Stylesheets erzwingen
Bei der Entwicklung von WordPress-Themes oder -Plugins taucht immer wieder das Problem auf, dass Skripte oder Stylesheets nicht direkt von der Quelle sondern aus einem Cache geladen werden, weil sie irgendwo auf dem Weg vom Server zum Browser zwischengespeichert werden. Es gibt verschiedenee Möglichkeiten dieses zu unterbinden, indem man z.B. den Browsercache in den Optionen ausschaltet oder ein Webentwicklungs-AddOn benutzt. Manchmal funktioniert das allerdings nicht, weil es die verschiedensten Möglichkeiten des Cachings gibt und man vielleicht nicht alle ausgeschaltet hat.
Continue reading WordPress: Neuladen von Skripts und Stylesheets erzwingen
WordPress: Benutzern das Passwort-Feld entziehen
Du hast also einen Benutzer erstellt und ihm ein gutes Passwort gegeben, damit die Sicherheit Deines Blogs nicht gefährdet wird? Leider kannst Du aber nicht sicher sein, dass der Benutzer dieses gute Passwort beibehält, denn er kann es ganz einfach auf seiner Profilesiete ändern.
Dieses Problem kann allerdings mit einem Filter gelöst werden:
Continue reading WordPress: Benutzern das Passwort-Feld entziehen
WordPress: Titel kürzen
Eine Frage, die immer wieder in WordPress-Foren auftaucht, ist, wie man den Titel auf eine bestimmte Anzahl Zeichen kürzen und ein “…” anfügen kann.
Das Problem ist mit einigen Zeilen PHP schnell gelöst:
add_filter( 'the_title', 'short_title' );
function short_title( $title ) {
$chars = 20;
if ( strlen( $title ) > $chars ) {
$title = substr( $title, 0, $chars );
$title .= " …";
}
return $title;
}
Die Variable $chars
muss auf die Anzahl Zeichen gesetzt werden, die man maximal anzeigen möchte und in Zeile 6 muss der Platzhalter für den ausgelassenen Text eingefügt werden (…
ist typografisch richtige Version für drei Punkte, Ellipse genannt).
Nachteilig an dieser Lösung ist, dass der Titel mitten in einem Wort abgeschnitten werden könnte. Wenn man möchte, kann man die Funktion entsprechend erweitern:
add_filter( 'the_title', 'short_title' );
function short_title( $title ) {
$chars = 20;
if ( strlen( $title ) > $chars ) {
$title = substr( $title, 0, $chars );
$title = substr($title, 0, strrpos( $title, ' ' ) );
$title .= " …";
}
return $title;
}
Kopiert man diese Funktion in die funtions.php
des Themes werden alle Aufrufe von the_title
den eingefügten Angaben entsprechend gekürzt.