Artikel-Schlagworte: „PHP“
WPSeo und qTranslate
qTranslate ist ein geniales Plugin welches Multisprachigkeit sauber erledigt. Ein paar Kleinigkeiten haben aber immer wieder gestört.
Als Beispiel die URLs:
http://beispielseite/Schulungen und http://beispielseite/en/Schulungen
Die URLs liessen sich nicht auch übersetzen. Dazu gibt es ein AddOn Plugin “qTranslate Slug” welches dies problemlos erledigt:
http://beispielseite/Schulungen und http://beispielseite/en/Education
Ein weiteres Problem sind aber die Titel, KeyWords und Description welche nur auf einer Sprache z.B. über wpSEO erfasst werden können. Ein kleiner Fix und WPSeo ist mit qTranslate kompatibel.
In der Datei Diesen Beitrag weiterlesen »
XHProf: PHP Profiler und Debugger
PHP ist eine sehr beliebte und verbreitete Programmiersprache. So baut auch WordPress und sehr viele andere CMS Systeme auf dieser Sprache auf. Je grösser die Sourcecodes werden, desto schwieriger wird es bei der Fehlersuche. Sucht man dann nicht unbedingt ein Programmierfehler, sondern nur ein Flaschenhals oder Performanceproblem, ist man schnell überfordert.
In diesem Moment helfen PHP Debugger oder Profiler. XDebug ist da sicher der bekannteste, sollte dieser jedoch nur in Testumgebungen eingesetzt werden. Hat man Probleme im produktiven Umfeld und lassen sich diese damit nicht verfolgen.
Zudem müss man bei XDebug und einer Testumgebung auch immer erst die Kunden installieren zum testen, ohne einfach ein Kurztest machen zu können.
Facebook baut auch auf PHP auf, um die internen Sourcen zu optimieren, hat Facebook ein Tool mit dem Namen XHProf entwickelt und dieses als Open Source veröffentlicht. XHProf eignet sich auch für den Einsatz im, produktiven Umfeld und wird als Debugger mit Web GUI fertig ausgeliefert.
Diesen Beitrag weiterlesen »
Confixx Serverumzug
Wer einen Confixx Server hat, hat sicher nicht eine grosse Lust die Daten von einem Server zum Anderen zu zügeln.
Die Anleitung ist eigentlich sehr einfach und man findet diese auch überall im Internet.
Jedoch synchronisiert Confixx auch wirklich nur was 1:1 über Confixx erstellt wurde mit ein paar wichtigen Ausnahmen.
Auch ich habe mich an die Anleitung gehalten und einfach mal ein Verzeichnis für das Backup erstellt:
cd /root
rm -R confixxdump
mkdir /root/confixxdump
und anschliessend das Backup gestartet:
cd /root/confixx
./backup.pl –dump /root/confixxdump/dump
Danach kann man die Backups auf den neuen Server zügeln mit SCP, z.B. mit:
scp -r ../confixxdump root@nmeuerserver:/storage/
Auf dem neuen Server kann man danach die folgenden Befehle starten:
cd /root/confixx/
rm restore.txt
./restore.pl –mapping –dump /storage/confixxdump/dump.tgz –map restore.txt –clean
Nun wurde ein restore.txt angelegt, was man bearbeiten sollte.
Darin muss man die neuen Server IP Adressen austauschen und gegebenenfalls die Domains anpassen.
Ist alles gemacht, kann der Restore mit:
./restore.pl –restore –dump /storage/confixxdump/dump.tgz –map restore.txt –clean –debug
angeworfen werden.
Soweit die Anleitung und dies funktioniert auch gut.
Nun die Ausnahme, hatte man irgendwelche spezifischen Einstellungen zu Kunden vorgenommen, sind diese im Nirvana.
Dies beinhaltet Diesen Beitrag weiterlesen »
WordPress in iFrame laden
WordPress hat bei der Version 3.1 ein Clickjacking Schutz per X-Frame-Options Header eingeführt.
Dies hat zur Folge, dass WordPress nicht mehr in iFrames geladen werden kann.
Da ich ein Updateskript geschrieben habe, was vollautomatisch alle WordPress Installationen per iFrames update, habe ich seither ein Problem.
Zuerst habe ich den Filter von WordPress mit folgendem Plugincode entfernt:
remove_action( 'login_init', 'send_frame_options_header'); remove_action( 'admin_init', 'send_frame_options_header');
Als Nächstes habe ich meine eigene Funktion hinzugefügt:
function wuk_send_frame_options_header() {
@header( 'X-Frame-Options: SAMEORIGIN, ALLOW-FROM http://wuk.ch' );
}
add_action( 'login_init', 'wuk_send_frame_options_header', 10, 0 );
add_action( 'admin_init', 'wuk_send_frame_options_header', 10, 0 );
Und schon wird der HTTP Header so modifiziert das iFrames von der angegebenen Webseite erlaubt sind, aber dennoch alle anderen Domains weiterhin verboten sind.
WordPress Backend Editor TinyMCE im Frontend einbinden
WordPress nutzt TinyMCE im Backend als Editor.
Wer nun den Editor auch im Frontend nutzen möchte, wird auf mehrere Probleme stossen.
Zum Einen ist der Editor extrem an WordPress angepasst worden was eine einfache Einbindung sehr erschwert. Weiterhin ist dieser an diversen Orten tief eingegraben welche die Einbindung verhindern.
Sucht man per Google, wird man diverse Ansätze zur Einbindung finden, doch keine fertige und funktionsfähige Lösung. Da ich dies aber benötigte, habe ich mich hingesetzt und eine eigene Lösung zusammengebaut.
Damit die Einbindung so einfach wie möglich ist, habe ich daraus eine PHP Klasse gemacht:
Diesen Beitrag weiterlesen »



