21/02/2010von 299 Views – 0 Kommentare

highly configurable

Wie schön war das Leben ohne „Ähnliche Beiträge“! Denn natürlich hab ich es nicht ausgehalten, dass ich so etwas nicht auf die Eselsohren bringe (Vorgeschichte siehe hier).

Auf meiner unermüdlichen Suche habe ich dann entdeckt, dass das Plugin Similar Posts unbedingt das Plugin Post-Plugin-Library braucht. Na, und schon hatte ich, was ich wollte.

Nur. Sobald ich anfing, die „highly configurable list of related posts“ an meine Wünsche, Träume, Vorstellungen, Allmachtsfantasien etc. anzupassen, bekam ich plötzlich eine Fehlermeldung. Und es wurden nur mehr Buchbesprechungen aufgelistet (und nicht auch Tipps etc., wie ich es will).

greater than or equal to 0

Ich konnte keine Kategorien (wie Romane, Krimis usw.) mehr ein- oder ausschließend – und es stand da bei „Filters“ diese Warnung:
str_repeat(): Second argument has to be greater than or equal to 0.
–/wp-content/plugins/post-plugin-library/admin_common_functions.php
on line 593

Wie man an meinem Büro sieht, bin ich ja ein vielseitiger Pfuscher, also habe ich diese Zeile gesucht und gefunden – und mich nicht ausgekannt.

Dann Recherche im Internet. – Mail an den Plugin-Autor. – Posting auf der Plugin-Site. – Mail an zwei Programmier-AuskennerInnen. – Von denen Hinweis auf dritten Programmier-Auskenner mit PHP-Kenntnissen. – Mail an diesen.

echo $level;

Die Antwort:
laß dir mal den aktuellen wert der variablen $level ausgeben … offenbar ist der wert negativ …
schreib an der stelle einfach: echo $level;
und ruf die seite auf …

Ich:
ja, ist negativ. und was jetzt?

Er:
also, gundsätzlich sollte der wert nicht negativ sein … es gilt herauszufinden, was ihn negativ macht … die funktion str_repeat macht ja nichts anderes, als x-mal den definierten string wiederzugeben – negativ geht das natürlich nicht … das vorzeichen eines wertes ändert man, indem man ihn mit -1 multipliziert.
der bug müßte aber dort zu finden sein, wo die variable $level definiert bzw. modifiziert wird …

Ich:
öh –

Er – sieht sich das fragliche PHP-Dokument an. Und findet keinen Fehler.

$level = $level – 1;

Aber er rät mir, das „- 1“ bei „$level = $level – 1;“ rauszunehmen, und siehe da: Die Fehlermeldung ist verschwunden.

Kurze Freude, denn die Kategorie-Auswahl funktioniert trotzdem nicht.
Die anschließende Entfernung von „+1“ bei „$level = $level + 1;“ hat www.eselsohren.at außer Kraft gesetzt.
Kurzer Herzstillstand. Dann das Dokument „admin_common_functions.php“ in der vorherigen Version via FTP hochgeladen. Die Eselsohren funktionieren wieder. Und ich kann plötzlich auch die Kategorien aus-/einschließen.

Warum, will ich gar nicht wissen.

Bis zur nächsten Fehlfunktion.

Werner Schuster


Schreiben Sie doch einen Kommentar

You must be logged in to post a comment.