Пытаюсь из обычной html-страницы сделать тему для Wordpress, который стоит у меня локально. Отделил Header и Footer, в Header.php добавил wp_head(), а в functions.php добавил следующий код:
<?php
function mytheme_scripts() {
wp_enqueue_style( 'main', get_template_directory_uri() . '/main.css');
wp_enqueue_style( 'fonts', get_template_directory_uri() . '/css/fonts.css');
wp_enqueue_style( 'media', get_template_directory_uri() . '/css/media.css' );
wp_enqueue_script( 'common', get_template_directory_uri() . '/js/common.js');
}
add_action( 'wp_enqueue_scripts', 'mytheme_scripts' );
Но, несмотря ни на что, таблицы стилей не подключаются (проверял через браузер). В чем может быть проблема? После редактирования main.css у меня подключились все стили. Но скрипты подключаться не хотят.
В первую очередь, вынесите add_action из тела функции!
<?php
function mytheme_scripts() {
wp_enqueue_style( 'main', get_template_directory_uri() . '/main.css');
wp_enqueue_style( 'fonts', get_template_directory_uri() . '/css/fonts.css');
wp_enqueue_style( 'media', get_template_directory_uri() . '/css/media.css' );
wp_enqueue_script( 'common', get_template_directory_uri() . '/js/common.js');
}
add_action( 'wp_enqueue_scripts', 'mytheme_scripts' );
get_template_directory_ur() не содержит закрывающий слеш. Я исправил код.
Кроме того, если у вас в header.php нет вызова wp_head(), то весь ваш код работать не будет.
Была такая проблемка. Решил так, просто подключал стили через функцию
function main_load() {
$theme_uri = get_template_directory_uri();
wp_register_style('main', $theme_uri.'/main.css', false, '0.1');
wp_enqueue_style('main');
}
add_action('main', 'main_load');
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости