PlugIns für WordPress entwickeln

29. September 2008

Da ich schon seit einiger Zeit eine konkrete Idee für ein WordPress Plugin habe, das ich auch sofort einsetzen würde, aber bisher nichts ähnliches gefunden habe, werde ich versuchen es selber zu „basteln“. Darum werde ich diesen Beitrag dazu nutzen um meine Erfahrung und letztendlich den Weg zum finalen PlugIn zu dokumentieren.

Einige hilfreiche Links zum Thema WordPress plugIn Entwicklung:


Notiz: Zend Framework

16. September 2008

Text-Newsletter Standard TEN

6. Juli 2008

Auf der Suche nach Standards für E-Mail Newsletter bin ich auf TEN (deutsche Übersetzung) gestossen. TEN steht für Text E-Mail Newsletter und versucht durch Barrierefreiheit, Newsletter auch für viele weitere Zielgruppen zu öffnen. Denn die meisten Newsletter im Internet sind alles andere als barrierefrei!

Insgesamt gibt es einige simple und effektive Methoden um einen E-Mail Newsletter TEN-konform zu formatieren, des Weiteren sind diese Optimierung auch für den Rest der Empfänger eher Vorteil als Nachteil. Somit spricht überhaupt nichts dagegen TEN komplett auf E-Mail Newsletter im Text-Format anzuwenden.

Da es sich bei den geplanten Newsletter und eine relativ überschaubare Klientel handelt, habe ich mich nach Recherchen mit phplist angefreundet und werde dieses für den Newsletter-Versand als Backend nutzen. Denn es macht keinen Sinn für einige hundert Empfänger, mit den großen Newsletter-Lösungen anzufangen.


Google Doctype

15. Mai 2008

Der Heise Newsticker berichtet grade über einen neuen Service von Google für uns Web-Entwickler.

Google hat in seinem Entwicklerbereich code.google.com eine Bibliothek für Web-Entwickler eingerichtet. Bei Google Doctype soll eine Enzyklopädie des „offenen Webs“ entstehen, also eine Referenz zu „HTML, JavaScript, CSS, und mehr“. Als Grund, der Masse der Nachschlagewerke für Web-Entwickler ein weiteres hinzuzufügen, gibt Google an, dass die bestehenden Quellen den eigenen Bedürfnissen nicht genau entsprachen. So seien viele der anderen Referenzen „in Stein gemeißelt“, also einmal geschrieben und dann nie aktualisiert worden.

Die Informationen bei Google Doctype dagegen sollen permanent frisch gehalten werden, etwa Browservergleichstabellen. Google hat zum Start schon etliche Informationen bereitgestellt. So finden sich etwa Beispiele zur DOM-Manipulation. Google hofft, dass Benutzer weitere Inhalte beisteuern. Die Inhalte stehen unter einer Creative-Commons-Lizenz. …


Weiterleitungen

10. Februar 2008

Durch die Wochenend Beilage des Reduxo Blog, habe ich einen schönen Artkel zum Thema Weiterleitungen gefunden. Darin wird beschrieben wie man diese realisieren kann mit .htaccess, PHP und Mod_rewrite. Jörg Kruse hat dazu einen entsprechenden Artikel geschrieben, hier nur die relevanten Codezeilen, Details findet ihr im besagten Artikel:

Redirect permanent /bla.html http://www.neue-domain.de/bla.html

<?php
header("HTTP/1.1 301 Moved Permanently");
header("Location: http://www.neue-domain.de/bla.html");
header("Connection: close");
?>

RewriteEngine On
RewriteRule ^(.*)\.html$ http://www.neue-domain.de/$1.html [R=301,L]


Openads 2.4.0

18. September 2007

Openads 2.4 is the new stable version of the hugely popular Openads adserver. This new version gives you more control over your adspace, has a simple upgrade process and can serve billions of ads each month.

Informationen


phpMyAdmin 2.11.0 is released

11. September 2007

phpMyAdmin is a tool written in PHP intended to handle the administration of MySQL over the Web. Currently it can create and drop databases, create/drop/alter tables, delete/edit/add fields, execute any SQL statement, manage keys on fields.

Welcome to phpMyAdmin 2.11, which will probably be the last series supporting PHP 4.

This version supports creating VIEWs from query results and can manage triggers, procedures and functions. It also supports MySQL 5.0.37 query profiling and has an improved interface for servers hosting thousands of databases and tables.


Mit PHP .WML generieren

6. September 2007

Wie bereits im Beitrag Mobile Web Design ersichtlich, beschäftige ich mich grade mit dem Mobile Web. Somit habe ich angefangen mit WML ein wenig rum zu experimentieren, da es völlig uninteressant wäre ohne dynamischen Content, wurde ich schnell eingebremst. Denn um zum Beispiel mit PHP entsprechende .WML Seiten generieren zu können müßen entsprechende Rahmenbedingung auf dem Webserver geschaffen werden.

In meinen konkreten Fall, bei einem Kundenprojekt das bei 1&1 gehosted wird, muß man eine .htaccess Datei im entsprechenden Verzeichnis anlegen und dort folgendes eintragen (Danke an Joerg Behrens aus de.comp.lang.php.misc):

AddType x-mapp-php4 .php .wml
DirectoryIndex index.wml

Dies hat zur Folge, das nun auch PHP Anweisungen innerhalb von Dateien mit der Endung .WML ausgeführt werden. Des Weiteren legt man sinnigerweise hier auch die Startseite des Angebots fest.

Nun schaut man sich generell an wie das Standard-Konstrukt einer WML Seite aussehen muß, da noch nicht alles 100% wasserdicht ist, was die Standardisierung angeht, schaut man sich halt aktuelle Angebote an. Daraus resultiert dann folgendes Konstrukt, das durchgängig genutzt wird:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">
<wml>
<card id="home" title="Mobile Web">
Hello World!
</card>
</wml>

Da aber nun PHP versuchen würde <? zu interpretieren, müßen wir diese Zeile mit PHP generieren mit einem entsprechenden Header der die Codierung der Seite festlegt und fügen letztendlich noch den codetechnischen Klassiker ein:

<?php
header("Content-Type: text/vnd.wap.wml;charset=UTF-8");
print("\n\n<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n");
?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">
<wml>
<card id="home" title="Mobile Web">
<?php echo "Hello World"; ?>
</card>
</wml>

Und optimalerweise sollte somit in unserem WAP Browser (z.B. WinWAP) dort „Hello World!“ stehen.


Service: Kampf gegen Zensur

3. September 2007

Eine durchaus interessante und momentan auch erfolgreiche Methode, im Kampf gegen die Zensur von Websites, bietet der Service Picidae an. Dieser Dienst wandelt eine Homepage in ein Bild um und ersetzt alle Links durch klickbare Imagemaps. Dies ist ein zur Zeit nicht überwindbarer Trick um bestimmten Websites durch Zensurfilter, zu sperren. Mehr dazu gibt es im heutigem Fontblog Beitrag dazu und weitere Informationen. Den Sourcecode gibt es zum Download und ist in PHP geschrieben.


PHP 5.2.4 – mehr Stabilität, weniger Fehler

2. September 2007

heise.de berichtet:

In der Version 5.2.4 der Skriptsprache PHP räumen die Entwickler mit einigen als nicht kritisch eingestuften Sicherheitslücken und zahlreichen weiteren Fehlern auf, die sich auf die Stabilität der Software auswirken. Insgesamt wollen die Programmierer mehr als 120 Fehler beseitigt haben.

Unter anderem war es in den Vorversionen möglich, Beschränkungen durch open_basedir in der Funktion glob() oder in der session-Erweiterung zu umgehen, wenn die session-Datei ein symbolischer Link war. Außerdem konnten in der GD-Erweiterung Integer-Überlaufe auftreten. Die mitgelieferte PCRE-Komponente zur Verarbeitung von regulären Ausdrücken wurde auf den Versionsstand 7.2 gehievt.

Laut Stefan Esser haben die Entwickler auch eine Denial-of-Service-Lücke (DoS) geschlossen. Mit Version 5.2.2 von PHP hatten sie standardmäßig die maximale Tiefe von Arrays auf 64 gesetzt, um einen beim Month of PHP-Bugs veröffentlichten Fehler zu beheben. Dies betrifft nicht nur die HTTP-Methoden POST und GET, sondern auch Cookies. In manchen Webbrowsern können Esser zufolge Seiten unter Umständen für Top-Level-Domains Cookies anlegen, wodurch PHP-generierte Webseiten auf verwundbaren PHP-Installationen in dieser Domain Fehlerseiten oder leere Seiten ausliefern.

Die weiteren Lücken ließen sich offenbar nur in Verbindung mit anderen Schwachstellen ausnutzen. Die vollständige Liste der Änderungen listet das Changelog zu dem neuen Release auf. Die PHP-Entwickler raten allen PHP-Nutzern zu einem Upgrade auf die Version 5.2.4, die auf den Seiten des Projektes zum Download bereitsteht.