Benutzerdefinierte Vorlagen werden in der Vorlagen-Dropdown-Liste nicht angezeigt

23

Ich habe einige Probleme mit Vorlagen in Wordpress (Multisite). Ich habe eine Datei im Stammverzeichnis meines untergeordneten Themenordners (template-test.php) erstellt.

<?php
/**
* Template Name: Test template
*
*/
?> 

<?php get_header(); ?>

<?php get_footer(); ?>

Diese Vorlage wird in der Dropdown-Liste Vorlagen nicht angezeigt, wenn Sie eine neue Seite erstellen oder eine vorhandene Seite bearbeiten. Das einzige, was in der Dropdown-Liste angezeigt wird, ist die Standardvorlage.

Was ich bisher versucht habe: - Deaktivieren und Aktivieren meines Themas - Flush Permalinks - Überprüfen Sie die Berechtigungen meiner Dateien - Überprüfen Sie, ob style.css im Stammverzeichnis des Vorlagenordners ist (es ist)

Ich habe die gleiche Datei auf einer anderen Wordpress-Installation ausprobiert, und dort funktioniert es einwandfrei.

Tom
quelle
Überprüfen Sie, ob Sie index.php im Stammverzeichnis Ihres Themas haben
Eugene
Ich habe das gleiche Problem und habe alles versucht, was Sie erwähnt haben. Hast du jemals eine Lösung gefunden?
wckronholm
In meinem Fall sehe ich die Datei nicht einmal im Theme Editor. @ Tom hast du es gelöst?
Ofir Baruch

Antworten:

32

Nur in Wordpress 4.9 gibt es diesen Fehler: https://core.trac.wordpress.org/ticket/42573, wodurch die Vorlagendateien nur einmal pro Stunde erneut gescannt werden.

Um dies zu beheben (bis sie eine neue WP-Version mit dieser Änderung veröffentlichen), laden Sie den Patch für dieses Fehlerticket herunter und nehmen Sie die Änderungen vom Patch auf vor wp-includes/class-wp-theme.php.

Hoffe das erspart jemand die 2 Stunden die ich damit verschwendet habe ..

Jan Żankowski
quelle
3
Sie können diesen Code auch zu Ihrer functions.php- Datei
Bradley4
8
Eine andere einfache Lösung besteht darin, die Theme-Version in der style.css-Datei anzuheben, auf die @ ocean90 im Forum hingewiesen hat.
R1987
1
@ r1987 das style.css update hat funktioniert!
Darye
Für mich war die style.css korrupt, also aktualisiere einfach die Datei und du solltest gut sein
nick 18.06.18
4

Es gibt einen Fehler in Wordpress 4.9.

Ich fand dieses temporäre Plugin sehr einfach. Ich plane, es zu deinstallieren, sobald sie den Fehler behoben haben, aber es funktioniert in der Zwischenzeit großartig!

Plugin: https://github.com/connorlacombe/WP-Clear-File-Cache

genial
quelle
3

Stellen Sie sicher, dass Sie index.php in Ihrem Hauptthema haben. Hauptthema muss index.php haben. Ich habe das gleiche Problem, und das war der Fall. Geprüft von:

function testate(){
    global $wp_themes;
    $tema = wp_get_theme();
    echo '<pre>';
    print_r($tema);
    die;
}

add_action('init', 'testate' );
Isu
quelle
2

Ich hatte auch dieses Problem mit einer Site auf WordPress Multisite und konnte es folgendermaßen beheben:

  1. Gehen Sie zu http://example.com/wp-admin/network/themes.php (ersetzen Sie example.com durch Ihre URL).
  2. Klicken Sie auf den Link "Bearbeiten" unter dem Thema, das Sie Probleme verursacht.
  3. Klicken Sie in der rechten Seitenleiste auf den Namen der Vorlagendatei, die nicht angezeigt wird. Beispielsweise könnte es "Events Page Template (template_events.php)" sagen.
  4. Nehmen Sie keine Änderungen an der Datei vor und klicken Sie auf die blaue Schaltfläche "Datei aktualisieren".
  5. Aktualisieren Sie den Bearbeitungsbildschirm der Seite, auf dem Sie die Vorlage festlegen möchten, und sie sollte jetzt in der Dropdown-Liste angezeigt werden.

Wenn dies für Sie nicht ausreicht, empfehlen wir Ihnen, http://vanseodesign.com/wordpress/wp-page-templates-dropdown/ zu besuchen . Es gibt noch einige andere mögliche Lösungen.

Viel Glück.

jg314
quelle
1

Vorlagen können deaktiviert werden, indem sie aus der wp_themesglobalen Variablen entfernt werden, bevor das Vorlagen-Dropdown geladen wird.

Führen Sie diesen Code auf der Seite aus, um zu sehen, welche Vorlagen angezeigt werden:

global $wp_themes;
$tema = wp_get_themes();
print_r($tema["child-theme folder name"]["Template Files"]);

Wenn Ihre Vorlage nicht angezeigt wird, hat das übergeordnete Design sie möglicherweise aus dem Array entfernt.

Wenn Sie diesen Code im Front-End ausführen, wird er möglicherweise angezeigt, da das übergeordnete Design ihn möglicherweise nur während des Ladens der Seite des Admin-Editors deaktiviert.

Laden Sie das übergeordnete Thema herunter und durchsuchen Sie die Dateien nach $wp_themesund wp_get_themes();, um den Speicherort dieses Codes zu finden.

Hoffentlich haben sie Ihnen die Möglichkeit gegeben, die Verwendung eines Filters zu verhindern. Andernfalls müssen Sie möglicherweise die Dateien im untergeordneten Design erneut hinzufügen. Dies könnte hilfreich sein: http://www.wpexplorer.com/wordpress-page-templates-plugin/

Levi Johansen
quelle
0

Korrektur der Seitenvorlage, die nicht im Dropdown-Menü angezeigt wird. Aktivieren Sie zum Korrigieren das folgende Plugin (anstatt die WordPress-Kerndateien zu ändern).

Unten finden Sie einen Link zum Herunterladen: https://drive.google.com/file/d/1ycHQGdc_vQtvtfBaznJp1KRsEbcoRwxB/view?usp=sharing

Rohit Savaj
quelle
2
Installieren Sie niemals ein Plugin von einem solchen Link! Es kann nicht vertraut werden. Installieren Sie Plugins immer von vertrauenswürdigen Quellen wie dem Wordpress Plugin Repository.
Jasonlfunk
0

Haben Sie die Datei style.css versehentlich aus dem Themenstamm verschoben oder entfernt?

In diesem Fall können Sie Folgendes tun: Erstellen Sie die Datei themes style.css neu, um das Vorlagen-Dropdown wieder zu aktivieren.

Jason ist mein Name
quelle