WordPress Theme: Widget Area hinzufügen

WordPress Widget Areas sind eine ideale Möglichkeit neue Bereiche in der Webseite (korrekt im jeweiligen WordPress Theme) zu schaffen, um Inhalte (auch optional) einzufügen oder später zu bearbeiten.

What is Widgetizing?

Widgetizing is a pseudo word that describes the process of implementing Widgets and Widget Areas into your Theme.

Ursprünglich war das Widgetizing für die Blog-Sidebar gedacht, es ist jedoch an jeglicher Stelle im Theme möglich, durch eine Widget Area einen neuen Platzbereich zu schaffen. In dieser Widget Area können alle zur Verfügung stehenden Widgets (Text-Widget, Individuelle Menüs oder andere spezielle Widgets von externen Plugins) integriert werden.

WordPress Widget Area registrieren

Sobald dieses Snippet in die functions.php des Themes eingefügt ist, steht dieser neue Widget Bereich im Backend unter Themes > Widgets für alle angelegten Widgets bereit und kann mit diesen gefüllt werden. Von diesen Dynamic Sidebars können unzählig viele registriert werden, allerdings mit eigener ID (intern wichtig) und Namen (dieser wird im Backend ausgegeben). Eine Beschreibung und weitere Parameter (class, before_widget etc.) können optional ergänzt werden.

Widget Area im Theme ausgeben

Die Widget Area (Dynamic Sidebar) kann im Theme in die verschiedenen Templates (z.B. sidebar.php, header.php oder footer.php) mit folgendem Snippet platziert werden. Mit der if-Bedingung vorweg wird geprüft, ob die Sidebar aktiv ist, also ein Widget enthalten ist.

Du hast Tipps, Vorschläge oder Fragen dazu? Dann schreibe uns einen Kommentar unter diesen Beitrag!

Quellen und Links

WordPress auf HTTPS (SSL-Verschlüsselung) umstellen

Sicher ist sicher. Daher rät sich eine Umstellung aller WordPress Webseiten auf die SSL-Verschlüsselung (möglichst TLS 1.2) über das verschlüsselte Protokoll HTTPS. Durch dieses Verfahren werden Daten verschlüsselt und sicher (durch Datenintegrität und Authentifizierung) übertragen. Ein nicht zu unterschätzender Fakt: Auch Suchmaschinen bevorzugen diese Verschlüsselung bei ihrem Ranking.

Vorbereitung

Vor der Umstellung benötigt man ein digitales SSL Zertifikat. Ist dieses Zertifikat auf dem Server eingebunden und hinterlegt (diese Thema ist einen extra Beitrag wert), kann die Webseite auf HTTPS (HyperText Transfer Protocol Secure) umgestellt werden.

Ein Tipp für ein freies und offenes Zertifikat ist Let’s Encrypt, was sich derzeit in der Beta-Phase befindet und dennoch bereits über eine Million Zertifikate afür über 2,4 Millionen Domains ausgestellt hat.

Let’s Encrypt is a free, automated, and open certificate authority brought to you by the Internet Security Research Group (ISRG).

WordPress auf HTTPS umstellen

Folgende Schritte (die noch verfeinert und ausgebaut werden können) sollten bei der Umstellung von WordPress auf HTTPS befolgt werden.

1) URLs und interne Links umstellen

Zum Umstellen aller URLs und internen Links, die auf HTTPs zugreifen sollen, können die Datenbank-Einträge angepasst werden. Dies ist auch manuell in den einzelnen Beiträgen, Widgets und Menüs sowie in den Einstellungen (im Backend unter Einstellungen > Allgemein: WordPress- und Website-Adresse) möglich.

Über die MySQL-Datenbank kann folgender SQL-Code verwendet werden. Vorsicht! Vorab ein Backup erstellen.

Hinweis: Bei Multisite-Installationen müssen zusätzlich alle Unterseiten mit angepasst werden.

Bei internen Bilddateien, z.B. im Theme, Shortcodes oder Widgets, empfiehlt sich die Umstellung der Pfade ohne Protokoll (also ohne http:// oder https://) anzugeben, was dann folgende Struktur aufweist:

2) HTTPs erzwingen und weiterleiten

Nach der Umstellung auf HTTPS ist das anschließende Erzwingen dieses Protokolls sehr wichtig, da ansonsten die Webseite ebenfalls noch über das unverschlüsselte Protokoll HTTP erreicht werden kann. Gleichfalls würde bei den Suchmaschinen ein doppelter Inhalte (zwei URLs mit selben Inhalte) erzeugt werden.

3) URLs und Links prüfen

Wichtig ist das Prüfen aller Links und neuen URLs! Werden alle Seiten korrekt und verschlüsselt übertragen und ist das kleine grüne Schloss in der Browser-Adresszeile zu sehen? Wenn nicht, sind meist nicht alle Dateien auf HTTPS umgestellt.

Abschließend sollten die Suchmaschinen einen Hinweis auf die Umstellung auf die neuen URLs erhalten. Dies kann bspw. über die sitemap.xml oder die Webmastertools passieren.

Google empfiehlt zusätzlich:

Verwenden Sie einen Webserver, der HTTP Strict Transport Security, kurz HSTS, unterstützt, und vergewissern Sie sich, dass diese Option aktiviert ist. HSTS weist den Browser an, Seiten automatisch über HTTPS anzufordern, auch wenn der Nutzer http in die Adressleiste des Browsers eingibt. Gleichzeitig wird Google aufgefordert, sichere URLs in den Suchergebnissen anzuzeigen. Durch diese Maßnahmen wird das Risiko minimiert, dass Nutzer unsichere Inhalte erhalten.

Tipp: Webhoster all-inkl.com unterstützt Let’s Encrypt-Zertifikate

Alle Tarife mit SSL-Erweiterung unterstützen ab sofort die Einbindung von kostenlosen „Let’s Encrypt“-Zertifikaten. Hierfür gibt es im Punkt „Domain bzw. Subdomain bearbeiten“ unter „SSL Schutz: bearbeiten“ einen weiteren Menüpunkt „Let’s Encrypt“. Dort lässt sich mit einem einzigen Klick das Zertifikat für die jeweilige Sub-/Domain beziehen, welches vom System etwa 30 Tage vor dem Ablaufen automatisch erneuert wird. Bitte beachten Sie, dass sich das „Let’s encrypt“-Projekt derzeit noch in der offenen Testphase befindet.
08.04.2016 08:00 – Unterstützung von Let’s Encrypt-Zertifikaten

Quellen und Links

WordPress Login wp-login.php schützen und verstecken

Um sich mit WordPress vor hartnäckigen Brute Force Attacks zu schützen, ist es eine effektive Lösung das WordPress-Login und dem direkten Zugang unter wp-login.php zu verstecken.

Problem:

Standardmäßig findet sich das WordPress Login bei jeder normalen Installation unter domain.tld/wp-login.php. Dies ist für einen Angreifer natürlich ein gefundenes Eingangstor und sie müssen sich lediglich um den Benutzernamen (kann relativ einfach gefunden werden) und das Passwort (mit viel Rechenleistungen ist auch dies knackbar) kümmern. Etwas sportlich formuliert, steht dann das Backend offen.

Lösung:

Um jetzt das Eingangstor zu verlegen, könnt ihr das kostenfreie WordPress Plugin WPS Hide Login verwenden. Dieses unterbindet den direkten Zugriff auf den /wp-admin/ und die Login-Datei wp-login.php und leitet auf eine gewünschte Alterativadresse um. Dazu könnt ihr im Backend unter Einstellungen > Allgemein einen neuen Pfad angeben, z.B. domain.tld/mein-backend-zugang/.

Fertig und vor allem sehr schnell erledigt!

Sehr praktisch: Das Plugin WPS Hide Login ist auch Multiuser-tauglich und somit auch für größere WordPress-Netzwerke zu verwenden.

Wichtig:

  1. Ihr solltet euch unbedingt den neuen Pfad merken, ansonsten findet ihr selbst den Weg ins Backend nicht mehr. Alternativ könnt ihr natürlich in der Datenbank nachschauen.
  2. Bei einer ersten Installation solltet ihr ggf. den Cache ausreichen leeren (z.B. beim W3 Total Cache), um auch den neuen Pfad zum WordPress Login zu erreichen.
  3. Nicht zu unterschätzen: Neben diesem Plugin solltet ihr weitere Sicherheitsmaßnahmen (allen voran sichere Passwörter!) verwenden.

Quellen und Links

BackWPup: WordPress Backup Fehler bei Starto

Aufgrund einer Serverkonfiguration tritt bei Strato-Hosting-Tarifen folgender Fehler bei einem größeren WordPress Backup auf:

ERROR: Signal „SIGXFSZ“ was sent to script

Der Fehler resultiert auf der hohen Dateigröße (z.B. größer als 64 MB), die das Plugin für das Backup erstellen muss. Dies wurde ebenfalls schon im WordPress Forum beschrieben, jedoch nicht wirklich gelöst.

Lösung:

Die Server-Einstellungen anpassen oder den Hoster wechseln. Konkret für den Strato-Fall könnte man ohne das Plugin auch einen internen Backup-Service einrichten (lassen).

The Events Calendar: Site URL für Lizenzschlüssel ändern

Für das kostenpflichtige WordPress Plugin The Events Calendar ist der Lizenzschlüssel für eine bestimmte Domain (Site URL) gültig. Habt ihr diesen erstmalig in einer Testumgebung zum Laufen gebracht, muss dieser anschließend für die Live-URL umgestellt werden.

So geht’s:

Um den Lizenzschlüssel für die neue URL zu aktivieren, logt ihr euch auf der offiziellen Webseite des Plugin-Anbieters ein und entfernt dort die aktuelle Site URL durch das Anklicken des Buttons Disconnect now. Anschließend tragt ihr den Lizenzschlüssel in eurem WordPress Backend auf der neuen Domain ein und habt dadurch die Domain (mit der neuen Site URL) aktiviert.

Ihr könnt dies anschließend in eurem Profil auf der Plugin-Webseite unter My Profile > License Keys sehen.

Der nützliche Tipp kam von Brian aus dem Support-Form.

WordPress: Zufallszahl mit wp_rand()

Manchmal muss der Zufall helfen. Im WordPress Core hilft die Funktion wp_rand() für eine zufällige, ganze Zahl. Diese einfache und dennoch manchmal nützliche Funktion generierte aus einem minimalen und maximalen Wert (einem beschränkten Intervall) eine Zufallszahl.

Beispiel:

Dieses Code-Snippet gibt bei jedem Aufruf eine Zahl zwischen 1 und 99 aus. Minimal- und Maximalwert können dabei beliebig verändert werden. Der Standardwert fürs Minimum ist 0, fürs Maximum 4294967295. Der Rückgabewert ist eine ganze Zahl (integer).

Wer mehr dazu wissen möchte, liest im WordPress Codex nach.

Nach WPML Update: Kommentare nicht möglich

Nach einem letzten Update von WPML ist das Kommentieren von Beiträgen in der/den übersetzen Sprache/n nicht möglich. Nach etwas Recherche stellte sich das Plugin Antspam Bee als Verursacher heraus.

Fehlermeldung:

In den Originalbeiträgen (Ausgangssprache) waren Kommentare weiterhin möglich, nur bei den übersetzten Blog-Beiträgen (Fremdsprache) erfolgte diese WordPress Fehlermeldung:

ERROR: please type a comment.

Lösung:

Das WordPress Plugin Antspam Bee, zur Abwehr von Spam-Kommentaren, zu deaktivieren brachte einen ersten Erfolg. Die Lösung ist nicht optimal, aber zielführend.

Im Support-Forum von WPML wurde diese Problematik bereits entdeckt und an das Compatibility Team weitergeleitet. Wir hoffen demnach auf eine kompatiblere Lösung von WPML.

PHP Warning: Illegal String Offset Error

Nach der Umstellung von PHP 5.4 und höher immer mal wieder eine Fehlerursache: PHP Warning: Illegal string offset.

Beispiel:

PHP Fehlerausgabe: Warning: Illegal string offset in [‚index‘] in www/root/file.php:28.

Lösung:

Erst das Array prüfen und dann den Index abfragen. Fertig!

Weitere Lösungen, auch speziell für WordPress, sind unter Fix PHP Illegal String Offset Error zu finden.

 

WordPress: E-Mail, wenn eine Beitrag aktualisiert wurde

Wer ihr mit mehreren Mitarbeitern an einem Blog schreibt oder arbeitet, möchte ihr auch auf dem neuesten Stand der Beiträge bleiben. Folgendes Snippet schickt eine E-Mail an den Administrator, wenn ein Beitrag aktualisiert wurde.

Manchmal hilfreich, wenn zu viele Änderungen anstehen, kann es auch zu einer Meldungsflut kommen. Wer es braucht, kann diesen Code verwenden, austesten oder auch erweitern. Das Snippet kann in der z.B. in der functions.php eines WordPress Themes verwendet werden.

Wer weitere Hilfe beim Einbinden oder Ausprobieren benötigt, kann sich gerne melden. Eure Erfahrungen sind ebenfalls gefragt.

Custom Post Fields in Broken Link Checker

Das praktische WordPress Plugin Broken Link Checker überwacht alle deine Links in deiner Webseite und warnt dich bei fehlerhaften Verweisen. Verwendest du allerdings Links in Benutzerdefinierten Feldern (Custom Post Flields) muss die Überwachung erst (einmalig) in den Einstellungen übernommen werden. So kannst du beispielsweise auch nur die Seiten, Beiträge oder anderes prüfen lassen.

This plugin will monitor your blog looking for broken links and let you know if any are found.

So wird’s gemacht:

In den Einstellungen > Broken Link Checker > Suchen Sie nach Links in aktivierst du den Haken bei Benutzerdefinierte Felder und notierst in dem Textfeld den Wert des Feldes, z.B. my-custom-post-field. Speichern und schon werden auch diese Links mit überwacht.

Praktisch und hilfreich, um fehlerhafte Links aufzuspüren und die Benutzer nicht ins digitale Nirvarna zu schicken.

Quellen und Links