Werden benutzerdefinierte Vorlagen im Unterverzeichnis platziert, wird die systemeigene WordPress-functionalität unterbrochen

Ich habe in einem bestehenden Projekt einen Ordner namens templates im Stammverzeichnis des Themas erstellt, in dem ich alle meine eigenen Template-Dateien abgelegt habe. Alle Dateien mit dem Template Name: BlahBlahBlah oben in der Datei.

Diese Änderung triggerse im Code, in dem ich dies getan hatte, den Dateinamen: get_post_meta( $post_id, '_wp_page_template', true ); .

Ich habe es folgendermaßen basename(get_post_meta( $post_id, '_wp_page_template', true )); : basename(get_post_meta( $post_id, '_wp_page_template', true )); .

Meine Frage ist, ob ich etwas in WordPress gebrochen habe, indem ich diese Änderung vorgenommen habe. Weiß jemand?

Solutions Collecting From Web of "Werden benutzerdefinierte Vorlagen im Unterverzeichnis platziert, wird die systemeigene WordPress-functionalität unterbrochen"

Da WP 3.4-Seitenvorlagen im Themenstammordner oder im direkten Unterverzeichnis gespeichert werden können, ist das kein Problem. Durch das Umbenennen von Seitenvorlagen, bei denen Dateien in andere Verzeichnisse verschoben werden, wird die Zuweisung dieser Seitenvorlagen für alle derzeit verwendeten Seiten aufgehoben.

Um die Seitenvorlage neu zuzuweisen, bearbeiten Sie die Seite einfach und wählen Sie die gewünschte Vorlage erneut aus.

Über die get_post_meta( $post_id, '_wp_page_template', true ); Wenn sich die Vorlagendatei unter “mytheme / sub-dir / templae-file.php” befindet, sollte der _wp_page_template Wert “sub-dir / template-fie.php” sein. Mit basename bleibt nur “template-fie.php”; Sie haben möglicherweise Gründe, nur den Namen der Datei zu benötigen, aber es ist nicht der richtige Wert für _wp_page_template , daher ist es nicht _wp_page_template .