Beiträge von codestyling

    Also, ich hab das Quickplugin nochmal getestet und es funktioniert auf meinen Testblogs so wie es sollte.
    Getestet hab ich das mit IE7 / Opera / FireFox und Safari für Windows.
    Da es nicht durch den HTML Validator ging, hab ich statt alt= nun rel= genommen, sorry, hab nicht dran gedacht, das es nur ein <a> und kein <img> ist.

    Als Anhang die getestete und validierte Variante nochmal, ich bekomme kein 404'er, weiss nicht wie du das machts.

    Attachment: Lighbox.js / Bugfix

    Ich stelle hiermit erstmal das gefixte Lightbox Javascript bereit.
    Bitte die gleichnamige Datei im Plugin-Ordner plugins/wp-lighbox2/js/ ersetzen und ein reload im Browser durchführen.
    Dann sollte alles so gehen, wie gewünscht.

    Lightbox Version: v2.03.3
    getestete WP Version: 2.5.0 / 2.5.1
    getestete Browser: IE7 / IE8 Beta / Opera 9.27 / FireFox 2.0.0.14 / Safari 3.1 Windows

    Wer möchte, kann auch die Differenzen anschauen. Alle Fixes sind im Code kommentiert und jederzeit prüfbar.

    Feedback erwünscht :)

    Zusatz: Es gibt eine neuere Version des Lightbox Scripts, aber dieses hat nach erster Durchsicht wieder andere "Macken" und zerfranst je nach Browers den rechten und linke Randstreifen des Bildes. Ein Update ist ohne Patch nicht ratsam, die o.g. Variante sollte korrekt funktionieren.

    3 Fehler in Lightbox v2.03.3 Plugin Javascript Code behoben !

    Hi, ich hab mit Hilfe deiner Dateien raus gefunden, was an Lightbox kaputt war:

    1. Lightbox läuft zwar auf Prototype.js 1.6.0, was mit WordPress 2.5.x mitkommt, aber ist nicht dafür primär geschrieben. Enthält veraltete Aufrufe, die man mal ersetzen sollte, hab nur die Safari Height/Width Behandlung sichergestellt. (müsste mal jemand an die neuen js Bibliotheken anpassen, mach ich vielleicht noch später)
    2. Mein Safari 3 für Windows macht ebenfalls beim Wechsel von Landscape zu Portrait bzw. andersrum den fatalen Fehler, die Breite der Landscape Bilder für die Breite des nachfolgenden Portraitbildes zu behalten. Das habe ich auch gefixed.
    3. Mit Opera 9.27 ist mir aufgefallen, das die Beschriftungsbox (weiß, am unteren Bildrand mit Caption und Bilderanzahl) sofort verschwindet, wenn sie ausgefahren wurde. Das liegt daran, dass Opera, warum auch immer, für die Box eine Höhe 0 hat. Ist auch gefixed.

    Somit habe ich das wp-lightbox2 WordPress Plugin mit folgenden Browsern sauber zum Laufen bekommen, was die Bilddarstellung betrifft:

    • IE 7/8 beta
    • FireFox 2.x++
    • Opera 9.27++
    • Safari 3 Windows

    Ich werde dir morgen (heute, wenn ich auf die Uhr sehe) die bereinigten Dateien zukommen lassen, bei Bedarf auch hier im Forum veröffentlichen.
    Der Autor wird ebenfalls informiert, ggf. das SVN gepatched. Da ich noch abschließende Tests mache, hab ich das noch nicht freigegeben.
    Werde das am Abend hier editieren und dranhängen (nur Lightbox Patches).

    Falls jemand noch andere Probleme, die die Darstellung (und nicht das Backend oder Verwendung) betreffen, bitte melden, dann kann das ggf. mit gepatched werden.

    Grüsse

    Wie schon gesagt, es ist schwierig rauszufinden, was nicht geht, wenn man's nicht testen kann.
    Ich meinte damit, ob die Zugriffe auf deine Domain direkt stattfinden, weil sie deine ist, oder ob die so gehostet ist, das die Anfragen erstmal woanders hin gehen und dann an deine Domain weitergeleitet werden.

    "Ist ein bischen so wie halt mal den Finger zu Fenster raus und sag mir, wie dunkel es draussen ist." :mrgreen:

    In deiner header.php:

    PHP
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
    <head profile="http://gmpg.org/xfn/11">
    <meta http-equiv="Content-Type" content="<?php bloginfo('html_type'); ?>; charset=<?php bloginfo('charset'); ?>" />

    ersetzen komplett mit:

    PHP
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" dir="ltr" lang="de-DE">
    <head profile="http://gmpg.org/xfn/11">
    <meta http-equiv="Content-Type" content="<?php bloginfo('html_type'); ?>; charset=<?php bloginfo('charset'); ?>" />

    So war das gemeint. Kannst UTF-8 nicht finden, weil es so nur in der Seite steht und in der 4. Zeile per PHP gebastelt wird.

    Und ich habe nie gesagt, dass das allein bereits das Problem löst. Nur muß die Seite(n) erstmal valide sein, damit man sich mit dem Problem der Javascripts beschäftigen kann! Sonst sind das 2 Baustellen und man weiss nicht, wer schuld ist.

    Momentan ist nämlich deine Seite nicht HTML valid.
    Und hattest du die wp-config.php gecheckt, ob die am Ende Leerzeilen hat ?

    Und wenn du schon dabei bist, dann kannst du das auch gelich mit ändern:

    bisher:

    HTML
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
    <head profile="http://gmpg.org/xfn/11">
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />

    nachher:

    HTML
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" dir="ltr" lang="de-DE">
    <head profile="http://gmpg.org/xfn/11">
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />

    Ich denke, du bloggst in deutsch und solltest auch deutsch angeben.
    Und transitional wegen der attribute, die verwendet werden.

    So, eine Leerzeile ist noch übrig, die da nicht hingehört.
    Ersetz mal den Anfang folgendermaßen:

    PHP
    <?php
       if(function_exists('yy_redirect')) yy_redirect(); 
       define ('TEMPLATE_DOMAIN','freshy');
       load_theme_textdomain(TEMPLATE_DOMAIN);
        global $yy_options;
        global $freshy_options; ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">

    Und schau mal deine wp-config.php an, ob die am Ende mehrere Leerzeilen hat nach dem schliessenden ?>
    Wenn ja, bitte rausnehmen.

    Nee, hab es gerade mal getestet, gleicher Fehler...


    Mühsam näherst du dich dem Reparaturziel.

    Jetzt sind noch 3 Leerzeilen zuviel drin.

    PHP
    001 <!-- language redirection -->
    002 <?php if(function_exists('yy_redirect')) yy_redirect(); ?>
    003 
    004 <?php define ('TEMPLATE_DOMAIN','freshy'); ?>
    005 <?php load_theme_textdomain(TEMPLATE_DOMAIN); ?>

    Da du nun Zeile 001 rausgeworfen hast, bekommt der Browser als Erste Leerzeile nun 003 aus dem Ausschnitt. Davon gibts von mehrere bis endlich der DOCTYPE ausgegeben wird.
    Alles was ausserhalb von <?php ..... ?> steht geht direkt an den Browser und wenn es Leerzeilen sind.

    Erst wenn dein Browser bei der Anzeige des Quelltextes die DOCTYPE Zeile als 1. Zeile hat, ist es geschafft und wir können das Problem angehen, ohne Annahmen über Browsermodies zu machen.

    Wird das Abfragen des Bildes mit 301/302 weitergeleitet ?
    Wenn dem so ist, dann funktioniert das mit dem Popup Code so nicht, denn der nur wiederverwendete window code kommt mit weitergeleiteten Bildern nicht zurecht.

    Wie wärs gemäß Blog Einrichtung am Anfang der Datei ?

    .. und dann den richtigen $thousands_sep und $decimal_point benutzen ?

    PHP
    number_format($number, 6, $decimal_point,  $thousends_sep);

    Also nun wundere ich mich aber.
    Wie kommt es denn zu dieser Ausgabe ?

    Code
    href=".../wp-content/uploads/2008/05/test.jpg"

    Dies ist keine gültige, relative Angabe für das Bild. 2 Punkte würde ich ja noch verstehen, aber wie kommt es zu 3 Punkten ?
    Es ist dadurch natürlich nicht möglich, das Bild zu finden und somit kommt ein 404. Werden die Bilder mit einem anderen Plugin in den Post integriert oder schreibst du das selbst in den Post ?

    So, hab den Safari nochmal sicherheitshalber geupdated und die Bildprobleme bestehen also real auch unter Win.
    Allerdings würde ich sagen, kann Safari den Quirks Mode nicht gut, denn deine Seiten beginnen so:

    Code
    <!-- language redirection -->
    
    
    
    
    
    
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">

    Der DOCTYPE sollte ja wohl in der 1. Zeile stehen, oder ?

    Kannst du das bitte reparieren, bevor wir hier weiter rum experimentieren ?

    ... Anhang geupdated, jetzt sollte es auch automatisch die richtigen Größen als alt Attribute in die <a> Tags reinschreiben.
    Also nun braucht's nur so zu sein:

    HTML
    <a href="http://www.bmeise.test/media/bug.jpg">Testbild</a>

    und daraus macht das Plugin dann:

    HTML
    <a title="Bugfix: WordPress 2.3.3 und TinyMCE 2.1.1.1" alt="300|200" name="image" href="http://www.bmeise.test/media/bug.jpg">Testbild</a>

    Der Title des Bildes ist dann zusätzlich der Post Title, wenn du das nicht möchtest, nimms raus.
    Ist so konzipiert, das es auch mit relativen URI Angaben zurechtkommen sollte, hängt aber im Einzelfall davon ab, woher die Bilder kommen, ob es dann auch geht.