wok
  • 0
Учитель

Как проверить, существует ли файл шаблона WordPress?

  • 0

Есть ли встроенная функция для проверки того, является ли тема файлом шаблона. Например, если тема не использует файл «home.php», выполните некоторый код…

Share
  1. Поэтому я бы добавил к ответу следующее:

    function foo_function() {
        $located = locate_template( 'home.php' );
         if ( !empty( $located ) ) {
              // 'home.php' found in Theme, do something
         }
    }
    add_action('init', 'foo_function');
    // remember to change both of the parameters above, first one for where you want the
    // action to happen and the second one the name of the function declared
    

    Как сказал @Chip Bennett, он проверит и то, TEMPLATEPATH и другое STYLESHEETPATH, но я бы добавил код в хук, а не просто поместил его в functions.php файл.

    Но решать вам.

    • 0
    • Я определенно буду использовать его с крючком. Мне нужна была эта функция, потому что я работаю над панелью параметров для своей темы, которая предоставляет варианты макета на основе доступных шаблонов.

      • 0
    • Спасибо, Чип… большое спасибо, я дам Веборду баллы, кажется, ему это нужно больше, чем тебе :-P. Ты великолепен в этом уголке мира WordPress. Я многому научился из всех ваших комментариев.

      • 0
  2. Любая причина locate_template() ( ссылка Кодекса ) не сработает?

    if ( '' != locate_template( 'home.php' ) ) {
         // 'home.php' found in Theme, do something
    }
    

    Обратите внимание, что locate_template() будут проверяться как TEMPLATEPATH, так и STYLESHEETPATH, поэтому он работает как для отдельной темы, так и для дочерней темы.

    • 0

Оставить ответ

You must login to add an answer.