1. Herzlich willkommen bei WPDE.org, dem grössten und ältesten deutschsprachigen Community-Forum rund um das Thema WordPress. Du musst angemeldet oder registriert sein, um Beiträge verfassen zu können.
    Information ausblenden

WP 2.9 läßt "Stray Random Quotes" Amok laufen...

Dieses Thema im Forum "Plugins und Widgets" wurde erstellt von zonebattler, 22. Dezember 2009.

  1. zonebattler

    zonebattler Well-Known Member

    Registriert seit:
    23. Februar 2008
    Beiträge:
    369
    Zustimmungen:
    20
    Hallo allerseits,

    ich nutze das Plugin "Stray Random Quotes" in der Sidebar nicht zum Einblenden von Text-Zitaten, sondern von Thumbnails, die auf die dazugehörigen, bebilderten Artikel verlinkt sind. Seit dem Upgrade auf WordPress 2.9 funktioniert das nimmer wie bisher, denn beim Abspeichern eines neuen "Zitats" wird vor die "Gänsefüßchen" jetzt immer ein da nicht hingehörender Backslash geschrieben, was die HTML-Syntax natürlich bis zur Funktionsunfähigkeit zerschießt.

    Beispielsweise wird aus sowas wie

    ... width="150" height="150" ...

    ein

    ... width=\"150\" height=\"150\" ...

    gemacht. Der einzige (auf Dauer nicht praktikable) Workaround besteht derzeit darin, per phpMyAdmin das betreffende Feld der Zitatentabelle anzusteuern und die Rückstriche direkt in der Datenbank rauszulöschen... ;-(

    Den Plugin-Autor habe ich angeschrieben bzw. einen Bug-Report auf seiner Plugin-Seite abgegeben, aber kann es nicht auch sein, daß der Fehler nicht dem Plugin, sondern dem neuen WordPress-Release anzulasten ist. Und was könnte man dagegen tun?

    Danke für jeden sachdienlichen Hinweis,
    Ralph
     
  2. toscho

    toscho Well-Known Member

    Registriert seit:
    4. August 2006
    Beiträge:
    631
    Zustimmungen:
    0
    Dieses Feature heißt »Magic Quotes«, und du kannst es normalerweise im Backend deines Webhosters abschalten. Wenn das nicht geht, versuch mal mein Plugin gegen Magic Quotes.

    Wenn die Backslashes dann immer noch auftauchen, liegt es allein am Zitatplugin. Das kann dann nur der Autor reparieren – oder du schreibst es selbst um.
     
  3. zonebattler

    zonebattler Well-Known Member

    Registriert seit:
    23. Februar 2008
    Beiträge:
    369
    Zustimmungen:
    20
    Danke für die Hilfestellung, von »Magic Quotes« hatte ich noch nie gehört. Dein Plugin kann das Wegschreiben der doofen Rückstriche in die Datenbank nicht verhindern, ob es sie zumindest beim Aufrufen und Darstellen eines Zitates rausfiltert, konnte ich auf die Schnelle noch nicht testen (habe derzeit 417 Einträge, von denen jeweils 4 in zufälliger Reihenfolge gezeigt werden). Mein Webhoster (Strato) kennt das Feature scheinbar nicht, es gibt demzufolge auch keine derartige Option im Backend.

    Mein Bug Report an den Plugin-Autor wurde bis dato noch nicht beantwortet, es hat auch den Anschein, daß er sich auf User-Kommentare hin schon monatelang nicht geäußert hat.

    Freilich: Bis zu WP 2.8.6. lief das Ding tadellos, die partielle Unverträglichkeit tauchte erst mit WP 2.9 auf...

    Hm, wenn gar nix hilft, muß ich halt weiterhin in der DB direkt herumpatchen. Ich will die vier zufällig gewählten Thumbs in der Sidebar ja nicht mehr missen.

    Danke & Gruß,
    Ralph
     
  4. toscho

    toscho Well-Known Member

    Registriert seit:
    4. August 2006
    Beiträge:
    631
    Zustimmungen:
    0
    Du könntest auch im Plugin flicken. Ohne es getestet zu haben, würde ich zunächst so ansetzen:

    In der Datei stray_widgets.php wird in Zeile 82 der Inhalt ausgegeben:
    PHP:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    Steht tatsächlich alles in einer Zeile; ich habe das mal halbwegs lesbar formatiert.

    Wenn du diese Zeile ersetzt durch …
    PHP:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    … dann sollten die Backslashes verschwinden, ohne daß du in die DB fassen mußt.
     
  5. zonebattler

    zonebattler Well-Known Member

    Registriert seit:
    23. Februar 2008
    Beiträge:
    369
    Zustimmungen:
    20
    Herzlichen Dank für diesen Tipp! Eigentlich wurmt es mich ja, wenn man an den Symptomen ansetzt, statt nachhaltig die Ursache zu kurieren, andererseits funktioniert es damit! Natürlich sind die Backslashe bei Neueinträgen (und editierten Alteinträgen) weiterhin in der DB vorhanden, aber sie wirken sich nimmer kontraproduktiv aus.

    Allerdings funktioniert es in der internen Verwaltungsseite mit der Vorschau (noch) nicht (wieder). Dafür ist offenbar die Datei stray_manage.php zuständig, aber in der findet sich der String "get_stray_quotes" nicht. Könntest Du mir auch da verraten, wo ich den Hebel ansetzen muß?

    P.S.: In der Datei "stray_ajax.php" war das "get_stray_quotes" hingegen drin, da habe ich jetzt sicherheitshalber die "umklammernde Ersetzungsfunktion" auch mit eingebaut. Siehst Du auf Anhieb, wo die zum Tragen käme?

    Vielen Dank,
    Ralph
     
    #5 zonebattler, 23. Dezember 2009
    Zuletzt bearbeitet: 23. Dezember 2009
  6. toscho

    toscho Well-Known Member

    Registriert seit:
    4. August 2006
    Beiträge:
    631
    Zustimmungen:
    0
    In der stray_manage.php könnte es helfen, wenn du unter die Zeile 93 …

    PHP:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    … schreibst:

    PHP:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    Auch hier: ungetestet.
     
  7. zonebattler

    zonebattler Well-Known Member

    Registriert seit:
    23. Februar 2008
    Beiträge:
    369
    Zustimmungen:
    20
    Die Syntax liest sich logisch, aber sie bewirkt leider nix... Hm.

    Wie und warum aber werden überhaupt die Rückstriche erzeugt? Gibt es da ein Geheimnis in der "stray_new.php", da müßte man doch das Übel schon bei der Entstehung an der Wurzel packen können?

    Nochmals danke und gute Nacht,
    Ralph
     
  8. toscho

    toscho Well-Known Member

    Registriert seit:
    4. August 2006
    Beiträge:
    631
    Zustimmungen:
    0
    Machbitte mal einen Screenshot von der kompletten Seite, auf der du das Problem noch hast.

    Vielleicht waren bei dir mal die Magic Quotes aktiviert und wurden so mit in die DB geschrieben. Im Quelltext des Plugins werden sie in diesem Falle »repariert«.
    Jetzt sind die Magic Quotes deaktiviert, und das Plugin repariert nicht mehr.
     
  9. zonebattler

    zonebattler Well-Known Member

    Registriert seit:
    23. Februar 2008
    Beiträge:
    369
    Zustimmungen:
    20
    Erst mal erneut herzlichen Dank, daß Du Dich meiner Problematik so geduldig annimmst!


    Ich zeige Dir gleich mehrere Screenshots. Erstens den der "Zitate verwalten"-Seite des Plugins:

    http://www.klein-aber-fein.de/uploads/sonstiges/zitate-01.jpg

    Betroffen ist nur das Zitat #417, alle vorhergehenden sind noch vor dem Update auf WP 2.9 entstanden und mithin nicht betroffen.


    http://www.klein-aber-fein.de/uploads/sonstiges/zitate-02.jpg

    zeigt das Editor-Fenster von Zitat #417 mit den ärgerlichen Rückstrichen,

    http://www.klein-aber-fein.de/uploads/sonstiges/zitate-03.jpg

    den tadellosen Zustand des Zitats #416 (und aller vorhergehenden).


    Übrigens mußte ich zur Anfertigung der Screenshots die letzte Änderung von Dir rückgängig machen, denn ich bekam beim ersten Edit-Versuch gleich eine Fehlermeldung:

    http://www.klein-aber-fein.de/uploads/sonstiges/zitate-04.jpg


    Kann ich nicht wirklich nachvollziehen: Bei meinem Provider gibt es diese Option nicht (habe in der Hilfe-Datenbank explizit danach gesucht), und ich schreibe ja auch ständig neue Artikel mit HTML-Code zum Bildereinbinden drin, ohne daß ich damit neuerdings Schwierigkeiten hätte! Einzig das Plugin bereitet mir Kopfzerbrechen seit WP 2.9, vorher gab es diese Rückstriche nicht und gibt es in den nicht angetasteten Alt-Datensätzen des Plugins bis heute nicht. Ich hab ja auch mit phpMyAdmin nachgesehen:

    http://www.klein-aber-fein.de/uploads/sonstiges/zitate-05.jpg

    Wenn das Problem ein providerseitiges wäre, müßte der Effekt ja quasi überall und blogweit auftauchen. Tut er aber offenbar nicht...

    Rätselnde Grüße,
    Ralph
     
    #9 zonebattler, 24. Dezember 2009
    Zuletzt bearbeitet: 24. Dezember 2009
  10. toscho

    toscho Well-Known Member

    Registriert seit:
    4. August 2006
    Beiträge:
    631
    Zustimmungen:
    0
    Hm, also werden die Quotes erst jetzt eingefügt. Das ist allerdings seltsam.

    Okay, da habe ich übersehen, daß das ein Objekt ist.

    Ersetze mal diesen Block:

    PHP:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    … mit diesem:
    PHP:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    Das ist eine Einstellung in der php.ini. Vielleicht kannst du die bearbeiten. Wenn du aber ein Standardpaket bei Strato hast, wird das vermutlich nichts.

    Der Code für den Post-Editor hat sein eigenes stripslashes(). Irgendwo.

    Ich sehe nirgendwo, daß beim Speichern Backslashes ausgefiltert würden. Mein oben genanntes Plugin sollte aber das Speichern reparieren. Wenn nicht, gib nochmal Bescheid.

    Vorhandene kaputte Zitate kannst du im MySQLAdmin (oder wie auch immer deine Verwaltung heißt) leicht ändern.
    Gehe in die Tabelle mit den Zitaten (wp_stray_quotes) und dort auf »SQL«.
    Gib diesen Befehl ein:
    Code:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    »OK« drücken. Fertig.

    Naja, wie beschrieben: Die meisten Scripte beugen hier vor. Einige nicht, und so eines hast du wohl erwischt.

    Gruß
    Thomas
     
  11. zonebattler

    zonebattler Well-Known Member

    Registriert seit:
    23. Februar 2008
    Beiträge:
    369
    Zustimmungen:
    20
    Hallo Thomas!


    Gell?!


    Bingo! Bei dem Satz hat's geschnackelt! Als ich meine WordPress-Installation unlängst upgedated und mit "HomePump" hochgeladen habe, ist mir beim FTP-Ablgleich eine scheinbar doppelte php.ini im Unterordner wp-admin aufgefallen. Weil ich eine Datei identischen Inhalts:

    PHP:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    schon auf Root-Ebene habe (zwecke Hochsetzen des Memory-Limits), habe ich die (scheinbar) redundante Datei gelöscht. Soeben habe ich aber ergoogelt, daß die Datei pro Verzeichnis vorhanden sein muß, wenn sie denn da Wirkung entfalten soll. Kaum hatte ich die php.ini gerade eben wieder in den Ordner wp-admin kopiert und hochgeladen, funktioniert auch mit dem Plugin alles wieder normal! Offenbar lag das komische Verhalten an

    PHP:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    Das war jetzt aber eine arg schwere Geburt und (für mich zumindest) ein Rätsel der besonders trickreichen Sorte. Ohne Dich wäre ich schwerlich auf die Lösung gekommen: Nochmals ganz herzlichen Dank für die geduldige Unterstützung und Frohes Fest!

    Lieben Gruß,
    Ralph
     
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden