Dudaevskiy
3/24/2020 - 2:21 AM

Как узнать дескриптор javascript WordPress, поставленных в очередь

https://cameronjonesweb.com.au/blog/how-to-find-out-the-handle-for-enqueued-wordpress-scripts/

Как узнать дескриптор сценариев WordPress, поставленных в очередь | Кэмерон Джонс

Благодаря широкому разнообразию плагинов и тем для веб-сайтов WordPress, иногда вы можете столкнуться с проблемами со скриптами и стилями, которые они включают. Возможно, ваш новый плагин формы имеет несколько отвратительных стилей, или, может быть, пара разных плагинов ставит в очередь разные версии библиотеки select2, вызывая все ...

Благодаря широкому разнообразию плагинов и тем для веб-сайтов WordPress, иногда вы можете столкнуться с проблемами со скриптами и стилями, которые они включают. Возможно, ваш новый плагин формы имеет несколько отвратительных стилей, или, может быть, пара разных плагинов ставит в очередь разные версии библиотеки select2, вызывая всевозможные проблемы.

В этих ситуациях вы, вероятно, захотите удалить оскорбительные сценарии. Сценарии можно удалить с wp_dequeue_scriptпомощью файлов JavaScript и файлов wp_dequeue_styleCSS, передав дескриптор сценария соответствующей функции. Найти дескриптор для таблиц стилей относительно легко, поскольку WordPress добавляет idатрибут к link элементу, который включает в себя таблицу стилей, но он не делает то же самое для файлов Javascript.

К счастью, это можно изменить. Добавив приведенный ниже код в ваш functions.phpфайл или в пользовательский плагин, дескриптор каждого скрипта будет добавлен к атрибуту данных. Это касается как внешнего интерфейса, так и администратора.

<?php
add_filter( 'script_loader_tag', 'cameronjonesweb_add_script_handle', 10, 3 );
function cameronjonesweb_add_script_handle( $tag, $handle, $src ) {
    return str_replace( '<script', sprintf(
        '<script data-handle="%1$s"',
        esc_attr( $handle )
    ), $tag );
}

После того, как вы реализовали приведенный выше код, все ваши скрипты будут иметь data-handle атрибут, содержащий дескриптор скрипта, как показано на скриншоте ниже.

Сценарии в очереди с дескриптором, отображаемым в атрибуте данных

Теперь вы можете получить дескриптор скрипта из data-handleатрибута, чтобы передать wp_dequeue_script.

Вы нашли этот пост полезным?

Да нет