it-swarm.com.de

Schwerwiegender Fehler: Aufruf der undefinierten Funktion post_exists ()

Ich benutze die Funktion in meiner eigenen Klasse, wie ich andere WordPress-Funktionen in ihr benutze.

Ich kann nicht verstehen, warum die Funktion nicht gefunden werden kann, während ide "zur Deklaration gehen" mich auf die Datei wp-admin/includes/post.php verweist

ist wp-admin dateien funktionen existieren nicht als global.

3
justnajm

Die Dateien in wp-admin werden nur geladen, wenn Sie sich im Administrationsbereich befinden ... wenn Sie Seiten oder Beiträge betrachten, werden diese Funktionen nicht geladen. In diesem Fall müssen Sie zuerst die Datei anfordern, damit Sie in Ihrer Funktion so etwas tun können:

if ( ! is_admin() ) {
    require_once( ABSPATH . 'wp-admin/includes/post.php' );
}

Der Teil if ( ! is_admin() ) ist wichtig, da WordPress die Datei automatisch einschließt, wenn is_admin()true ist. Sie möchten ihn daher nur einschließen, wenn is_admin()false ist. Stellen Sie auch sicher, dass Sie dieses Snippet einschließen, bevor Sie versuchen, die Funktion post_exists() aufzurufen.

Wenn das nicht funktioniert, versuchen Sie Folgendes:

if ( ! function_exists( 'post_exists' ) ) {
    require_once( ABSPATH . 'wp-admin/includes/post.php' );
}
8
Wes Moberly