• Помогите пожалуйста, заманался вконец. НЕ могу понять, как в wp подключать произвольные css из произвольных мест в head. Суть такая, что я хочу в зависимости от категорий страниц использовать различные шаблоны, но не использовать стандартный механизм шаблонов, чтобы не заставлять пользователей при создании новой страницы выбирать шаблон в админке.

    Использовал такой вариант:

    function enqueue_example_css( ) {
    	wp_enqueue_style( 'example', get_template_directory_uri() . '/css/example.css');
    }
    add_action( 'wp_enqueue_scripts', 'enqueue_example_css' );

    Он работает, но это получается функция на вызов только одного css файла!!! При попытке создать такие же блоки кода для другого файла, уже получается хрень…..

    Как можно вызвать из двух разных мест в теме два разных css файла?

Просмотр 4 ответов — с 1 по 4 (всего 4)
  • Пробовал параметром передать в функцию имя файла со стилем, чтоб его подставить, но параметр не передается при add_action почему-то…..Да кстати, почему нельзя такие же блоки создать под другие стили — потому, что при вызове одного, срабатывает вызов всех и все стили подключаются разом((((

    function enqueue_example_css( ) {
    if (is_page(1)) {
    	wp_enqueue_style( 'example', get_template_directory_uri() . '/css/example.css');
    } elseif(is_page(2)) {
    	wp_enqueue_style( 'example', get_template_directory_uri() . '/css/example.css');
    } else {
    	wp_enqueue_style( 'example', get_template_directory_uri() . '/css/example.css');
    }
    add_action( 'wp_enqueue_scripts', 'enqueue_example_css' );

    Спасибо тебе большое, человек!!!!! Спасибо! Я эту проверку в коде темы делал и естественно вызывал уже непосредственно из части шаблона…Сейчас проверка задваивается конечно, в одном месте я проверяю страницу и подключаю части шаблона, а в другом проверяю страницы и подключаю стили….Это неправильно конечно. Но хоть так, а то я уже психовать начал

    Это в functions

    function enqueue_css() {
    	if ( is_single() && !is_category() )
    		wp_enqueue_style( 'single', get_template_directory_uri() . '/css/single.css');
    	elseif ( is_page( 'Новости' ) )
    		wp_enqueue_style( 'news', get_template_directory_uri() . '/css/news.css');
    	if ( is_single() && !is_category() )
    		wp_enqueue_style( 'single', get_template_directory_uri() . '/css/single.css');
    }
    add_action( 'wp_enqueue_scripts', 'enqueue_css' );

    А это в шаблоне

    <?php if( is_single() && !is_category() ) : ?>
    			<?php get_template_part( 'templates/single-post' ); ?>
    		<?php elseif( is_page( 'Новости' ) ) : ?>
    			<?php get_template_part( 'templates/news' ); ?>
    		<?php elseif( is_page( 'Закупки' ) ) : ?>
    			<?php get_template_part( 'templates/procurements' ); ?>
    		<?php elseif( is_category( 'Новости' ) ) : ?>
    			<?php get_template_part( 'templates/single-news' ); ?>
    		<?php elseif( is_category( 'Закупки' ) ) : ?>
    			<?php get_template_part( 'templates/single-procurement' ); ?>
    		<?php endif; ?>

Просмотр 4 ответов — с 1 по 4 (всего 4)
  • Тема «wp_enqueue_scripts» закрыта для новых ответов.