Szablony niestandardowe nie są wyświetlane w menu rozwijanym szablonów

23

Mam problemy z szablonami w Wordpress (wiele witryn). Utworzyłem plik w katalogu głównym mojego folderu motywu podrzędnego (template-test.php)

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

<?php get_header(); ?>

<?php get_footer(); ?>

Ten szablon nie pojawia się w menu szablonów podczas tworzenia nowej strony lub edytowania istniejącej strony. Jedyną rzeczą w menu jest „szablon domyślny”.

Co próbowałem do tej pory: - Wyłączanie i włączanie mojego motywu - Flash permalink - Sprawdź uprawnienia do moich plików - Sprawdź, czy style.css znajduje się w katalogu głównym folderu szablonów (jest)

Próbowałem tego samego pliku na innej instalacji Wordpress i tam działa dobrze.

Tomek
źródło
Sprawdź, czy masz index.php w katalogu głównym motywu
Eugene
Mam ten sam problem i próbowałem wszystkiego, o czym wspomniałeś. Czy kiedykolwiek znalazłeś rozwiązanie?
wckronholm
W moim przypadku nawet nie widzę pliku w edytorze motywów. @Tom rozwiązałeś to?
Ofir Baruch

Odpowiedzi:

32

Tylko w Wordpress 4.9 jest ten błąd: https://core.trac.wordpress.org/ticket/42573 powodujący ponowne skanowanie plików szablonów tylko raz na godzinę.

Aby to naprawić (do czasu wydania nowej wersji WP z tą zmianą), pobierz łatkę na tym zgłoszeniu błędu i wprowadź zmiany z łatki na wp-includes/class-wp-theme.php.

Mam nadzieję, że to ocali kogoś 2 godziny, które zmarnowałem na to ..

Jan Żankowski
źródło
3
Możesz również dodać ten kod do swoich funkcji.php lub dodać go jako wtyczkę, aby zatrzymać buforowanie zamiast edytować podstawowe pliki: gist.github.com/westonruter/6c2ca0e5a4da233bf4bd88a1871dd950
Bradley4
8
Innym prostym rozwiązaniem jest wybicie wersji motywu w pliku style.css, jak wskazał @ ocean90 na forum.
r1987
1
@ r1987 aktualizacja style.css działała!
Darye
Dla mnie plik style.css został uszkodzony, więc po prostu zaktualizuj plik i powinieneś być dobry
nodws
3

Upewnij się, że masz główny plik index.php. Motyw główny musi mieć plik index.php. Mam ten sam problem i tak właśnie było. Sprawdzony przez:

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

add_action('init', 'testate' );
Isu
źródło
2

Miałem również ten problem ze stroną w witrynie WordPress Multisite i mogłem go rozwiązać, wykonując następujące kroki:

  1. Przejdź do http://example.com/wp-admin/network/themes.php (zamień example.com na swój adres URL).
  2. Kliknij link „Edytuj” pod motywem, który powoduje problemy.
  3. Na prawym pasku bocznym kliknij nazwę pliku szablonu, który się nie wyświetla. Na przykład może powiedzieć „Szablon strony zdarzeń (template_events.php)”.
  4. Nie wprowadzaj żadnych zmian w pliku i kliknij niebieski przycisk „Aktualizuj plik”.
  5. Odśwież ekran edycji strony, na której próbujesz ustawić szablon, i powinien on być teraz wyświetlany w menu rozwijanym.

Jeśli to Ci nie pomoże, sugeruję sprawdzenie http://vanseodesign.com/wordpress/wp-page-templates-dropdown/ . Istnieje kilka innych możliwych rozwiązań.

Powodzenia.

jg314
źródło
1

Szablony można dezaktywować, odznaczając je od wp_themeszmiennej globalnej przed załadowaniem menu rozwijanego szablonu.

Uruchom ten kod na stronie, aby zobaczyć, jakie szablony się wyświetlają:

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

Jeśli szablon nie pojawi się, motyw nadrzędny mógł go usunąć z tablicy.

Może pojawić się, jeśli uruchomisz ten kod w interfejsie, ponieważ motyw nadrzędny może go rozbroić tylko podczas ładowania strony edytora administratora.

Pobierz motyw nadrzędny, wyszukaj pliki $wp_themesi wp_get_themes();znajdź lokalizację tego kodu.

Mam nadzieję, że dali ci sposób, aby zapobiec używaniu filtra, jeśli nie, być może będziesz musiał ponownie dodać pliki w motywie potomnym. Może to być pomocne: http://www.wpexplorer.com/wordpress-page-templates-plugin/

Levi Johansen
źródło
0

Napraw szablon strony, który nie wyświetla się w menu rozwijanym, aktywuj poniżej wtyczki, aby to naprawić (zamiast zmieniać podstawowe pliki WordPress)

Poniżej znajduje się link do pobrania https://drive.google.com/file/d/1ycHQGdc_vQtvtfBaznJp1KRsEbcoRwxB/view?usp=sharing

Rohit Savaj
źródło
2
Nigdy nie instaluj wtyczki z takiego linku! Nie można ufać. Zawsze instaluj wtyczki z zaufanych źródeł, takich jak Repozytorium wtyczek Wordpress.
jasonlfunk,
0

Czy przypadkowo przeniesiłeś lub usunąłeś plik style.css z katalogu głównego motywu?

Jeśli tak, to może być tak - ponownie utworzyć motyw style.css, aby ponownie włączyć menu rozwijane szablonu.

Jason to moje imię
źródło