#php #wordpress #woocommerce #storefront
#php #wordpress #woocommerce #витрина магазина
Вопрос:
когда я пытаюсь включить таблицу стилей моих дочерних тем в дочерние темы functions.php он выдает ошибку 404 в консоли из-за дублирования имени. Вот ошибка и сценарий постановки в очередь:
VM281:165 GET https://tusenochenknopp.se/wp-content/themes/storefront-child-theme/style.cssstyle.css?ver=5.6 net::ERR_ABORTED 404
add_action( 'wp_enqueue_scripts', 'toek_theme_name_scripts' );
function toek_theme_name_scripts() {
wp_enqueue_style( 'style', get_stylesheet_uri() .'/style.css' );
}
Я попытался изменить имя файла и в скрипте, но затем я получаю эту ошибку:
VM2131:165 GET https://tusenochenknopp.se/wp-content/themes/storefront-child-theme/style.css/child-style.css?ver=5.6 net::ERR_ABORTED 404
Я благодарен за любые предложения по решению.
Ответ №1:
Вы используете get_stylesheet_uri()
функцию вместо get_stylesheet_directory_uri()
функции
Первый получает фактический URI для файла таблицы стилей, последний получает каталог для него. Поэтому вам нужно будет обновить свой код до любого из следующих:
wp_enqueue_style( 'style', get_stylesheet_uri() );
или
wp_enqueue_style( 'style', get_stylesheet_directory_uri() .'/style.css' );
Я бы рекомендовал последнее, потому что оно более семантично при добавлении нескольких таблиц стилей позже, но в конечном итоге любой из них должен работать. Также обратите внимание, что первое использование get_stylesheet_uri()
работает только в том случае, если ваша таблица стилей имеет соответствующее имя style.css
Документация и ссылки на функции:
Функция | Описание |
---|---|
get_stylesheet_uri() |
Извлекает URI таблицы стилей для текущей темы. |
get_stylesheet_directory_uri() |
Извлекает URI каталога таблиц стилей для текущей темы |
wp_enqueue_style() |
Поставьте в очередь (и зарегистрируйте) CSS styleshee |
Комментарии:
1. Спасибо @Xhynk, это сработало. Мне было интересно узнать о документации и ссылке на функцию в разделе функция. Вы пишете
get_stylesheet_directory()
, но когда вы нажимаете на ссылку, она говоритget_stylesheet_uri()
.get_stylesheet_directory()
Существует ли функция?2. Ах, извините за это, это была опечатка, я это исправил. Да,
get_stylesheet_directory
существует, но это возвращает путь к теме вместо URI . При постановке в очередь подобных ресурсов вам захочется использовать_uri
функции, но приinclude
редактировании,file_exists()
редактировании или проверкеfilemtime()
файлов etc вы должны использовать_directory
функции._uri
выведет что-то вродеhttps://example.com/wp-content/themes/theme/style.css
,_directory
выведет что-то вроде/home/users/1234/www/wp-content/themes/theme/style.css
.