WP2.2-Fatal Error: undefined function get_private_posts_cap_sql

  • Habe ein Upgrade (von Hand) von 2.13 auf 2.2 durchgeführt.

    Im Tellerrand erscheint darauf eine Fehlermeldung:

    Zitat

    Fatal error: Call to undefined function get_private_posts_cap_sql()
    in [...]/wp-admin/index.php on line 64

    In der angesprochenen Zeile 63-64 steht folgendes:

    Zitat

    Zeile 63: <?php
    Zeile 64: if ( $recentposts = $wpdb->get_results("SELECT ID, post_title FROM $wpdb->posts WHERE post_type = 'post' AND " . get_private_posts_cap_sql('post') . " AND post_date_gmt < '$today' ORDER BY post_date DESC LIMIT 5") ) :

    Die neue Versionsnummer wird immer noch Rot angezeigt. Obwohl die Upgrade.php sagt kein Upgrade erforderlich.
    Der Tellerrand wird auch nicht mit News versorgt.

    Folgendes habe ich bereits erfolglos probiert:

    • Plug-In Ordner umbenannt
    • Theme gewechselt

    Ansonsten funktioniert der Blog aber einwandfrei. Zumindest habe ich noch keinen Fehler entdecken können.

    Vielleicht hat hier schon jemand das Problem lösen können.
    Und wofür steht die Funktion get_private_posts_cap?

    funkygog Blog | Chicago House

    Einmal editiert, zuletzt von funkygog (18. Mai 2007 um 18:35)

    • Anzeige

    Hallo!

    Wenn du gerade an deiner Website arbeitest oder dein aktuelles Hosting überdenkst: Wir betreiben mit NetzLiving eine Hosting-Plattform, die speziell auf Performance, Sicherheit und einfache Verwaltung ausgelegt ist.

    • ✔️ Schnelle Ladezeiten (optimiert für WordPress & Co.)
    • ✔️ Deutsche Server & DSGVO-konform
    • ✔️ Persönlicher Support (kein 0815-Ticket-System)

    Mehr erfahren

  • Den WordPress "Object Cache" kann man mit einem Eintrag in der wp-config.php anschalten:

    define('ENABLE_CACHE', true);

    Und dann legt WordPress normalerweise automatisch einen Ordner namens "cache" in deinem "wp-content"-Ordner an.

    Das war jetzt aber bloß eine "wilde Vermutung" - nur hab ich heute 5 WordPress-Installationen von 2.13 auf 2.2 upgedingst - Und jedes Mal gab's anfangs verschiedene Fehlermeldungen - die jedes Mal nach "einmal Cache ausleeren" weg gewesen sind.

    Beziehungsweise musste man manchmal noch übergangsweise in der wp-config das ENABLE_CACHE auskommentieren, damit nicht dauernd irgendetwas Neues/Altes/Falsches in den cache-Ordner geschrieben wird.

  • Oops, da hast Du schon gepostet, während ich noch geschrieben hab ...

    - PlugIns brauchst Du keine für den WordPress-Cache
    - Selbst anlegen muss man den nur, wenn der Ordner wp-content keine Schreibrechte hat (Bei mir ist wp-content "frei", schreibgeschützt sind allerdings die Ordner "plugins" und "themes")
    - Mit aktiviertem WordPress-Cache sollte Dein Blog ein gutes Stück schneller werden ...
    - Eine fette Leistungsbremse ist der WordPress-Cache allerdings, wenn man auf Servern mit safe_mode = On sitzt ... nutzt dann auch nichts, wenn man den cache-Ordner auf #777 setzt ...

    Es gibt ein PlugIn namens WP-Cache, das ist aber ein anderes Paar Schuhe - Das speichert komplette Seiten als statische HTML-Files ab ...

  • Der Blog-Beitrag von wegen "Cache-Problem gelöst" bezieht sich auf WordPress 2.1 - In den darauffolgenden Versionen hat der Cache keine Probleme mehr gemacht.

    Das Thema SafeMode - Leg eine Datei namens "info.php" in Dein Hauptverzeichnis, Inhalt

    PHP
    <?php phpinfo(); ?>

    Wenn Du dann http://www.deineseite.de/info.php aufrufst, sollte Dir eine ziemlich ausführliche Tabelle mit allen Einstellungen ausgegeben werden, die für Deinen Webspace gelten.

    Ist vielleicht ein bisschen unübersichtlich, dort "mit gucken" nach safe_mode zu suchen - Einfach Strg-F drücken, und den Browser nach der Zeile mit "safe_mode" suchen lassen.

  • Vielen Dank für diesen Super-Tipp!
    Demnach ist Safe_Mode=Off.

    Dann steht dem Cache wohl nichts mehr im Weg.

    Obwohl eigentlich hatte ich ja ein anderes Problem...

    Werde das mit dem Cache einrichten verschieben, bis ich das obige
    Problem gelöst habe. (Nicht so viele offene Baustellen).

    Danke Dir zunächst, vielleicht kann ich dann zum Thema Cache über Deinen Blog Rückfragen stellen?

    Schönen Gruß
    Gorden

  • Schiet ... Funktioniert das immer noch nicht?

    Erst einmal in der "version.php" (Ordner wp-admin) gucken, was dort steht. Normal müsste dort

    Code
    $wp_version = '2.2';
    $wp_db_version = 5183;

    zu lesen sein. Was steht da bei Dir?

    Wenn dort noch irgendwas mit 2.13 steht - Dann sind wahrscheinlich nicht alle Dateien, die für das Upgrade nötig sind, hochgeladen worden - und WordPress sieht noch keinen Bedarf, die Datenbank zu aktualisieren.

    .
    .
    .

    Ansonsten ... wir wissen ja nun, dass der Fehler nicht an irgendwelchen "alten", zwischengespeicherten Daten liegt - WordPress "kennt" die Funktion "get_private_posts_cap_sql" augenscheinlich tatsächlich nicht.

    Guck mal in der Datei "post.php" (ebenfalls im Ordner wp-admin) nach, ob es dort diese Funktion gibt. Sollte eigentlich in Zeile 1573 auftauchen.

    Wenn nicht, dann ... naja, ich würd die neuen WordPress-Dateien einfach noch mal erneut hochladen. Und falls es beim letzten Versuch daran gescheitert sein sollte, dass eventuell einige Dateien schreibgeschützt waren oder aus anderen Gründen nicht "überschrieben" worden sind - Bist Du auf der sicheren Seite, wenn Du die beiden Ordner "wp-admin" und "wp-includes" umbenennst ... beispielsweise in "wp213-admin" und "wp213-includes" ...

    Dann kannst Du die neuen "wp-admin" und "wp-includes"-Ordner ohne Rücksicht auf Verluste hochladen - und sicher davon ausgehen, dass auch WIRKLICH alles da ist.

  • Erledigt

    Danke Pufaxx,

    Zitat

    ich würd die neuen WordPress-Dateien einfach noch mal erneut hochladen. Und falls es beim letzten Versuch daran gescheitert sein sollte, dass eventuell einige Dateien schreibgeschützt waren oder aus anderen Gründen nicht "überschrieben" worden sind - Bist Du auf der sicheren Seite, wenn Du die beiden Ordner "wp-admin" und "wp-includes" umbenennst ... beispielsweise in "wp213-admin" und "wp213-includes" ...

    Dank des Überschreibens hat es funktioniert.

    Hatte in der "version.php" nachgeschaut, dort wurde noch die alte Version angezeigt (2.13). [size=8]
    Übrigens (jetzt?) im wp-includes Verzeichniss.[/SIZE]

    Jetzt erscheint der Tellerrand ohne Fehlermeldungen.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!