Загрузка разных таблиц стилей на страницы Wordpress?


У меня есть одна таблица стилей, связанная с моей страницей Wordpress в разделе заголовка:

<link rel="stylesheet" type="text/css" href="<?php bloginfo('template_directory'); ?>/style.css" />

Теперь я хочу загрузить разные таблицы стилей на несколько страниц или подстраниц.

Каков наилучший/правильный способ достижения этой цели?

Я подумываю о том, чтобы написать свой собственный шорткод с названием "wp_enqueue_style", это хорошая идея?

Author: Wordpressor, 2011-06-27

2 answers

Не используйте шорткод для wp_enqueue_style(); это не принесет никакой пользы, потому что к тому времени, когда шорткод будет проанализирован, все соответствующие крючки ( wp_head, wp_print_styles) будет уже уволен.

Напишите функцию в functions.php, чтобы поставить в очередь различные таблицы стилей на основе is_page( $id ) (где $id может быть идентификатором, заголовком или заголовком). Затем подключите эту функцию к wp_enqueue_scripts.

P.s. также обратите внимание: вы должны использовать get_stylesheet_uri() в ссылке таблицы стилей по умолчанию, например:

<link rel="stylesheet" type="text/css" href="<?php echo get_stylesheet_uri(); ?>/style.css" />
 2
Author: Chip Bennett, 2011-06-27 19:29:12

Если вы хотите просто сменить любое расположение href в стиле или около того, вы можете использовать этот фильтр, например:

add_filter( 'style_loader_src', function($href){
if(strpos($href, "name-of-allowed.css") !== false) {
return $href;
}
return false;
});
 0
Author: PayteR, 2017-08-11 11:16:51