Allgemein, Code

Überdenke die Verwendung von Code Snippets!

Mein Blog ist sicher eines der vielen Sites im Netz, das in einer gewissen Form Code-Snippets veröffentlicht – davon gibt es zu Hauf, egal ob eigene Ideen oder Copy/Paste Version. Aber darüber möchte ich hier keine Worte verlieren – ich möchte zum Nachdenken oder einer Diskussion anregen: die Kultur der Snippets und ihre Verwendung. Mein Standpunkt soll als Start in die Überlegung dienen und hat keine Bestrebung in Richtung Vollständigkeit und zu Ende gedacht.
Mit ist klar, dass meine Meinung eben nur meine Sicht ist und aktuell habe ich dazu keine Diskussion im engeren Kreis geführt; kenne aber die Arbeit im Alltag mit den Freunden, Kollegen und nahe stehenden Entwicklern im WordPress Umfeld.

Mein Standpunkt wird sicher sehr WordPress getrieben sein, da ich mich sehr stark in diesem Umfeld bewege und man verzeihe mir die Einschränkung. Aber so spreche ich sicher einen Großteil der Leser meines Blogs an und kann eventuell ein Nachdenke oder gar Umdenken erreichen. Insbesondere ziele ich auf die Anwender ab, die meinen, dass wenn Sie sämtliche Funktionen irgendwo unüberlegt kopieren und in die functions.php des WordPress Themes ziehen, dass Sie eine besonderes tolle Lösung haben. Ein Schnipsel, ein Snippet ist mehr als die Lösung zum Verwenden, es ist die Basis um eine Ziel schneller zu erreichen – es ist nicht die fertige Lösung für die jeweilige Anforderung.

Snippets überdenken

Weiterlesen

Standard
Code, PHP, Tipps, WordPress

WordPress Login unterbinden

Nicht immer ist ein Login in WordPress gewollt – so habe ich für meine lokale Entwicklungsumgebung das Login deaktiviert, insofern ich es nicht brauche. Bisher sind mir zwei Möglichkeiten dieser Anforderung begegnet und diese möchte ich euch kurz vorstellen.
Entscheidet selbst, welche für euch der richtige Weg ist, wenn ihr das Login nicht bzw. nicht in dem Standard-Zeitrahmen benötigt.
Weiterlesen

Standard
Tipps, WordPress

WordPress gehackt – was tun, eine Schnellhilfe

… die keinen Anspruch auf Vollständigkeit erhebt und mal eben dem einen oder anderen Leser dienen soll und getrieben aus gegebene Anlass. Das Hacken von Blogs ist keine Eigenart von WordPress Blogs – dies kann jedem CMS passieren. Ebenso kannst du dir nicht sicher sein, dass du nicht betroffen bist, nur weil du irgendein Plugin aktiv hast und weil du die aktuellste Version von WordPress fährst.

Wobei es hier keine Diskussion werden soll, ob WordPress mehr als andere Applikation betroffen ist oder anfälliger ist. Die Unterschiede sind weitreichend – Schwachstellen gehören zur Software und die meisten Standard-Tools sind nur für das Gewissen oder den Geldbeutel.
Weiterlesen

Standard
Tipps, WordPress

Private WordPress Beiträge für geloggte User zeigen

WP Adventskalender 08
Mitunter nutzt man die Funktion der privaten Beiträge in WordPress. Diese Beiträge kann nur der User sehen, der sie erstellt hat, bzw. die Rolle des Administrators. Um alle Usern diese Artikel zu zeigen, die im System angemeldet sind, kann man verschiedene Wege gehen. Ich möchte mal zwei unterschiedliche Wege kurz aufzeigen.
Weiterlesen

Standard
PHP, Tipps, WordPress

Die WordPress Datenbank Möglichkeiten

Die WordPress Datenbank Klasse ist recht umfangreich und liefert eine ganze Reihe von Methoden um effektiv mit der Datenbank zu arbeiten und dabei auf den WordPress-Standard zuzugreifen.

Zu finden ist die Klasse in /wp-includes/wp-db.php, wo auch die einzelnen Methoden dokumentiert sind. Dort sind weitere Methoden zu finden, allerdings sind die wichtigsten oft in Gebrauch und daher sind diese nur ein Teil der Klasse.

Ich zeige mal die wichtigsten und lege kleine Beispiele ab, zum Teil in unterschiedlichen Schreibweisen, um die Möglichkeiten aufzuzeigen. Es ist von größer Bedeutung mit diesen Möglichkeiten zu arbeiten und so die Sicherheit von Plugins zu gewährleisten. Sie geben ausreichend Möglichkeiten in die Hand, schaffen Sicherheit und man nutzt die Standards von WordPress, muss sich also nicht um Abhängigkeiten kümmern.
Weiterlesen

Standard
Allgemein, Code, PHP, WordPress

SSEQ-LIB im Einsatz

Ich habe hier live im Blog die SSEQ-LIB im Einsatz; nur so kann ich eine ausreichend frequentierte Plattform nutzen um die Library zu testen. Wenn jemanden meiner Leser Fehler, Ungereimtheiten oder einfach Unstimmigkeiten auffallen, dann wäre ich sehr dankbar für eine Mail oder einen Kommentar hier.

Zum Hintergrund: sseq-lib ist eine mächtige PHP-Security Bibliothek
Security-Themen, die sseq-lib behandelt:

  • XSS (Cross Site Scripting)
  • SQL-Injection
  • CSRF (Cross Site Request Forgery)
  • Session-Fixation
  • Mail-Header-Injection
  • File-Injection
  • HTTP-Header-Manipulation
  • Response-Splitting
  • Informative error messages

Viele Informationen stehen im Projektverzeichnis bereit und ebenfalls auf das Blog von Erich Kachel.

Standard
PHP, Tipps, WordPress

Dateitypen für die Mediathek freigeben

Mit WordPress 2.8.5 wird die Whitelist der erlaubten Mime-Typen für Downloads erstmalig auch für Administratoren gültig. Dies ist ein Schritt in Richtung Sicherheit und wird im Artikel von Robert hinreichend erklärt.
Robert zeigt auch, dass man mit Hilfe einer Konstanten die Möglichkeit alle Datentypen zu uploaden eröffnen kann.
define ('ALLOW_UNFILTERED_UPLOADS', true);

Wer aber im Vorfeld schon diverse Projekte mit WordPress umgesetzt hat und das Problem hatte, dass User nicht über die Rechte zum Upload eines bestimmten Formates besaßen, der musste sich auch da was einfallen lassen.

In vielen Fällen wurde dazu via Plugin Role Manager der Upload aller Mime Typen erlaubt. Aus meiner Sicht nicht der richtige Weg und daher im folgenden ein kleiner Code-Schnipsel, der das Anpassen an die jeweilige Anforderung übernimmt.
Weiterlesen

Standard
Tipps, WordPress

WordPress Update Info nur für Admins

Nicht selten setzt man WordPress für Nicht-Administratoren ein, sei es als CMS oder Weblog, – darum sollten auch nicht alle Nutzerrollen eine Informationen über Plugin- und Core-Updates bekommen.
Um dies einfach und schnell zu realisieren, nutze ich eine kleine Abfrage in der functions.php des Themes. Mit Hilfe des Objektes edit_plugins (Rechte für Userlevel und Objekte lassen sich im Codex nachlesen) prüfe ich, ob es sich um einen User handelt, der diese Möglichkeit besitzt und die im Standard nur Administratoren zu Teil wird. Damit stelle ich sicher, dass auch nur diese Nutzer die Information über Aktualisierungen von Plugins und dem Core bekommen.

Nicht jeder will die Form der Funktionalitäten in ein Theme integrieren, wo sie sicher auch nicht unbedingt perfekt aufgehoben sind. Alternativ werde ich diese Lösung im Plugin „Secure WordPress“ integriert, so dass man sie dort über eine Auswahlseite aktivieren kann.
Weiterlesen

Standard
Allgemein, Entwicklung, Webküche

Angst vor dem IE 8?

IE
Der Internet Explorer der Version 8 steht in den Startlöchern und es wurde schon viel darüber berichtet. Für Microsoft ist es aus meiner Sicht eine sehr starke Veränderung, für Webentwickler ist es ein Fortschritt in jeder Hinsicht. Der IE war in der Vergangenheit nicht gerade der Liebling der Webentwickler. Allerdings sollte man auch nicht verschweigen, dass Microsoft eine ganze Reihe von Möglichkeiten im Web geschaffen hat, die den Internet Explorer zumindest im Bereich von Administration und Business-Anwendungen schon vor AJAX und Web 2.0 zu Möglichkeiten verhalf, die mit anderen Browsern damals nicht denkbar waren.

Und auch beim Internet Explorer 8 führt Microsoft wieder Neuerungen ein, die der Webwelt vorerst in zwei Lager spalten. In diesem Artikel will ich mich daher nicht über Webstandards und Microsoft auslassen, sondern über die neuen Funktionen gegen das Ausspähen von Nutzern.
Weiterlesen

Standard