WordPress: Hook Infos auslesen


Bei der Entwicklung eigener Themen oder Plugins mit WordPress ist es nützlich zu wissen, welche Callback-Funktionen an welchen Hooks hinzugefügt wurden. Viel wichtiger ist aber deren Priorität und der Typ, Action oder Filter. Denn mit add_action() und add_filter() sind sie als solche noch gar nicht endgültig definiert wie man weiter untern sehen wird. Diese Funktionen sind sogar vertauschbar, ohne einen Fehler zu generieren. So kann schnell eine Verwirrung entstehen, wenn der Programmierer die falsche Funktion benutzt. Man würde zum Beispiel anhand des Aufrufs einen Filter erwarten, der keiner ist.

In WordPress 4.7.0 wurde für die Verwaltung der Action- und Filter-Callbacks die neue WP_Hook-Klasse eingeführt. Die globale Variable $wp_filter ist seit dem ein eindimensionaler Array der WP_Hook-Klassenobjekte. Sowohl die Action- als auch Filter-Callbacks werden in diesen Objekten gespeichert. Vor der WordPress Version 4.7.0 war $wp_filter ein mehrdimensionaler Array der die Performance ziemlich belastet hat.

Was aber wenn man herausfinden möchte ob ein Hook-Callback ein Filter oder eine Aktion ist? Oder mit welcher Priorität sie ausgeführt werden? Aktionen werden beim Hinzufügen genauso behandelt wie die Filter. Man könnte einen Filter mit add_action() hinzufügen wie auch umgekehrt eine Aktion mit add_filter() und es würde keine Rolle spielen. Sie landen alle gleicherweise in dem $wp_filter-Array. Ohne Rücksicht auf den Typ. Die add_action()-Funktion ist nur ein Alias für add_filter().

Android Nachrichten Counter zurücksetzen


Es kann vorkommen dass eine App ungelesene Nachrichten signalisiert obwohl es keine gibt. Der Auslöser für meine Recherche nach einer Lösung war ein WhatsApp-Absturz während ich die Nachrichten las. Das WhatsApp-Icon zeigte danach 2 ungelesene Nachrichten an, im WhatsApp-Chat gab es aber keine neuen und ungelesen markiert. Neue ankommende Nachrichten wurden dem Zähler hinzugefügt, also 3, 4 usw. Nach dem Öffnen der Nachrichten wurde der Zähler bis auf die 2 wieder dekrementiert.

WhatsApp - BadgeCounter 2
WhatsApp – ungelesene Nachrichten

Android Startbildschirmverknüpfungen umbenennen


INFO: Diese Anleitung richtet sich an Benutzer von gerooteten Android Geräten.

Auf einem gerooteten Android-Gerät lassen sich die Startbildschirm- und App Menü-Verknüpfungen ganz einfach umbennenen. Die Namen sind in der Datenbank /data/user/0/com.sec.android.app.launcher/databases/launcher.db gespeichert. Um sie zu ändern braucht man einen SQLite Datenbankeneditor wie zum Beispiel SQLite Editor von Weavebytes oder den hier benutzten SQLite Editor von Speed Software. Beide benötigen die root-Rechte für den Zugriff auf die Datenbanken.

Überwachung der Internetverfügbarkeit


Einige Internetnutzer haben Probleme mit der Internetverbindung und würden gerne wissen wann die Verfügbarkeit nicht da war. Ist man unterwegs oder schläft nachts bekommt man es gar nicht mit. Es wäre also nützlich eine Log-Datei zu haben, in der man die Unterbrechungen einsehen kann. Oder noch besser per E-Mail darüber informiert werden.