{"id":339,"date":"2009-09-02T11:57:37","date_gmt":"2009-09-02T09:57:37","guid":{"rendered":"http:\/\/hjacob.com\/blog\/?p=339"},"modified":"2009-09-02T12:09:41","modified_gmt":"2009-09-02T10:09:41","slug":"jquery-lightbox-und-php-speedy-kombinieren","status":"publish","type":"post","link":"https:\/\/hjacob.com\/blog\/jquery-lightbox-und-php-speedy-kombinieren\/","title":{"rendered":"jQuery Lightbox und PHP Speedy kombinieren"},"content":{"rendered":"<p>Wer sein WordPress Blog mit einer <a href=\"http:\/\/www.huddletogether.com\/projects\/lightbox2\/\" rel=\"external\">Lightbox Gallerie<\/a> aufpeppen m\u00f6chte, bekommt daf\u00fcr einige Plugins im WordPress Codex angeboten. Nachdem ich vier verschiedene nicht zum Laufen gekriegt habe, musste ich feststellen, dass die Plugins sich nicht mit der <a href=\"http:\/\/aciddrop.com\/php-speedy\/\" rel=\"external\">PHP Speedy Caching Engine<\/a> vertragen. Daher habe ich das <a href=\"http:\/\/wordpress.org\/extend\/plugins\/jquery-lightbox-balupton-edition\/\" rel=\"external\">jQuery Lightbox Plugin<\/a> von Pedro Lamas dahingehend umgeschrieben, dass es ohne Probleme mit der Caching Engine l\u00e4uft.<\/p>\n<p><!--more weiterlesen --><\/p>\n<h2>Die L\u00f6sung des Problems<\/h2>\n<p>Das Kernproblem liegt darin, dass Lightbox versucht den absoluten Pfad, in dem die Grafiken und Scripts liegen, per Javascript herauszufinden. Dabei sucht Lightbox nach dem  Script-Tag, nimmt dessen SRC-Attribut und ermittelt daraus dann die BaseURL. Da PHP Speedy aber alle CSS und JS Includes aus dem HTML Code entfernt (um daraus einen kombinierten Include zu bauen), scheitert dieses Vorhaben seitens Lightbox.<\/p>\n<p>Ich habe daher die Scripts <a href=\"\/downloads\/wordpress\/jquery-lightbox-cache-fix.zip\" title=\"Wordpress Plugin downloaden\">dahingehend angepasst<\/a>, dass Lightbox die BaseURL direkt im Script erh\u00e4lt (hardcoded) und au\u00dferdem die Scripte bzw. CSS Files nicht dynamisch per Javascript l\u00e4dt und stattdessen diese schon serverseitig eingebunden werden, damit PHP Speedy auch alle komprimieren kann.<\/p>\n<p>Dieser Tweak ist Quick&#038;Dirty, daher \u00fcbernehme ich keine Garantie, dass es auch auf anderen Blogs l\u00e4uft &#8211; bei mir funktioniert es jedenfalls ohne Probleme :).<\/p>\n<p><a href=\"\/downloads\/wordpress\/jquery-lightbox-cache-fix.zip\" title=\"Wordpress Plugin downloaden\">WordPress Plugin: <b>jQuery Lightbox mit PHP Speedy Support<\/b> herunterladen<\/a><\/p>\n<h2>Installation<\/h2>\n<ul>\n<li>Einfach das Plugin wie gewohnt in den wp-content\/plugins Ordner kopieren. Den besehenden Ordner entweder \u00fcberschreiben oder vorher umbenennen.  <\/li>\n<li>In dem Unterordner &#8222;js&#8220; des jQuery Lightbox Plugins die Datei &#8222;jquery.lightbox.min.js&#8220; in einem Texteditor \u00f6ffnen<\/li>\n<li>In Zeile 480 die BaseURL anpassen (also der Pfad, wo die Daten sp\u00e4ter auf dem Server zu finden sind)<\/li>\n<li>Nicht vergessen, das Plugin im WordPress Admin zu aktivieren (Plugins->Installed).<\/li>\n<li>Eventuell m\u00fc\u00dfen die bestehenden Cache Files gel\u00f6scht werden, dazu im PHP Speedy Cache Ordner mal vorbeischauen und ggf. die gechachten Javascript und CSS Dateien l\u00f6schen.<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Wer die Caching Engine PHP Speedy in seinem Wordpress Blog verwendet, k\u00f6nnte beim Lightbox Einsatz auf Probleme sto\u00dfen. Hier gibt es Hilfe.<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[55,5],"tags":[110,106,108,107,371,109,365],"_links":{"self":[{"href":"https:\/\/hjacob.com\/blog\/wp-json\/wp\/v2\/posts\/339"}],"collection":[{"href":"https:\/\/hjacob.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/hjacob.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/hjacob.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/hjacob.com\/blog\/wp-json\/wp\/v2\/comments?post=339"}],"version-history":[{"count":5,"href":"https:\/\/hjacob.com\/blog\/wp-json\/wp\/v2\/posts\/339\/revisions"}],"predecessor-version":[{"id":341,"href":"https:\/\/hjacob.com\/blog\/wp-json\/wp\/v2\/posts\/339\/revisions\/341"}],"wp:attachment":[{"href":"https:\/\/hjacob.com\/blog\/wp-json\/wp\/v2\/media?parent=339"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/hjacob.com\/blog\/wp-json\/wp\/v2\/categories?post=339"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/hjacob.com\/blog\/wp-json\/wp\/v2\/tags?post=339"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}