Intereting Posts
Отображать содержимое из настраиваемых мета-полей в версиях Меню здания из категорий продуктов Woocommerce Исключить страницы по меню получить следующий следующий пост в single.php get_categories для настраиваемого типа сообщений с привязкой к конкретной пользовательской таксономии Перенаправление перед страницей Создать Shortcode показывает только сообщения с custom_field meta Echo get_the_category () вне цикла (глобальное?) WordPress в HTTPS, вызывая переадресацию циклов Миграция ролей из одной среды в другую Получить настраиваемые поля без _edit_last, _edit_lock, _wp_page_template и _visual-subtitle вы можете установить значение по умолчанию для настраиваемого поля Собственный .css-файл общего хранилища W3 не загружается async для 100/100 баллов в Google Page Speed? Как добавить элемент с меню walker сразу после начала тегов навигации? Страница архива типа персонализированной почты: установка сообщений на страницу, разбиение на страницы

Включить стили / скрипты Buddypress & bbPress условно

Я работаю над настраиваемой темой, которая использует Buddypress и bbPress для добавления функций социальной сети. Я заметил, что оба плагина css и js (многие файлы) загружаются на каждую страницу, хотя ни одна из функций не используется там.

Например, на моей домашней странице у меня есть только ссылка на форумы, поэтому я не хочу, чтобы все скрипты и стили были включены там.

Я ищу что-то вроде

if (is_buddypress() || is_bbpress() ) { wp_enqueue_style(...); wp_enqueue_script(...); } 

Есть ли способ сообщить этим плагинам добавить свои скрипты и стили только тогда, когда условные теги выше верны?

Заранее спасибо!

Для этого конкретного экземпляра вы можете использовать is_front_page() а затем удалить их, чтобы удалить их с первой страницы.

 if(is_front_page()){ wp_dequeue_script( ... ); wp_dequeue_style( ... ); } 

Что касается других страниц, я бы предложил иметь массив страниц, чтобы исключить ресурсы и использовать is_page() чтобы проверить, следует ли исключать его. В идеале этот массив будет установлен на странице параметров

 $pages_to_exclude = array( 1,2,3... ); foreach($pages_to_exclude as $page){ if(is_page($page)){ wp_dequeue_script( ... ); wp_dequeue_style( ... ); } } 

Или встроенная функция PHP in_array()

 global $post; $pages_to_exclude = array( 1,2,3... ); if(in_array($post->ID,$pages_to_exclude){ wp_dequeue_script( ... ); wp_dequeue_style( ... ); } 

Что касается встроенного решения, которое поставляется с плагинами, я бы не знал, поскольку я не знаком с ними, поэтому может быть лучшее решение. Не уверен, что это будет рассмотрено в рамках этого сайта.