Добавить пользовательский CSS в шаблон страницы в wordpress
Привет
Мне нужна помощь в создании пользовательского файла css для моего шаблона страницы.
Есть много тем, касающихся этой проблемы, но с каждым потоком, который я читаю, я получаю больше информации и больше смущен.
Я создал дочернюю тему для темы двадцать четыре и добавил шаблон страницы. Как добавить пользовательский CSS в этот шаблон. Я обнаружил, что
этот код добавлен в дочернюю тему functions.php выбирает соответствующий класс с моим css. Но как и где я помещаю этот класс? Я прочитал, что мне нужно добавить класс в тег body в header.php, но я не уверен. Правильно ли это?
if (is_page_template( 'mytemplate.php' )){
$classes[] = 'myclass';
}
Ответы
Ответ 1
Используйте параметр is_page_template()
для выборочной загрузки CSS.
В приведенной ниже функции мы подключаемся к wp_enqueue_scripts
и проверяем, находимся ли мы на шаблоне пользовательской страницы, чтобы определить, загружать ли дополнительные CSS.
Если результат верен, мы загрузим файл CSS под названием page-template.css
из папки css/
внутри вашей темы. Обновите путь для загрузки нужного файла.
function wpse_enqueue_page_template_styles() {
if ( is_page_template( 'mytemplate.php' ) ) {
wp_enqueue_style( 'page-template', get_template_directory_uri() . '/css/page-template.css' );
}
}
add_action( 'wp_enqueue_scripts', 'wpse_enqueue_page_template_styles' );
Ответ 2
Как насчет этого решения?
<?php
function mypage_head() {
echo '<link rel="stylesheet" type="text/css" href="'.get_bloginfo('stylesheet_directory').'/includes/mypage.css">'."\n"
}
add_action('wp_head', 'mypage_head');
?>
<?php get_header(); ?>
Вы можете использовать wp_head
hook, чтобы добавить пользовательский материал (Javascript, CSS..) в свой собственный шаблон. Я думаю, что этот способ лучше, потому что все изменения будут содержаться в вашем файле шаблона, поэтому вам не нужно будет проверять другое место.
Я получаю это решение от: http://scratch99.com/wordpress/development/custom-page-template-external-css-file/.
Ответ 3
Как насчет этого?
function my_custom_styles() {
wp_register_style( 'custom-styles', get_template_directory_uri().'/lib/styles/custom-styles.css' ) );
if ( is_home ) {
wp_enqueue_style( 'custom-styles' );
}
}
add_action( 'wp_enqueue_scripts', 'my_custom_styles' );
Я проверил все три ответа отсюда; и все они отлично работают. Кто-нибудь знает, какой из них быстрее и лучше?