Intereting Posts
Какие плагины вы обычно устанавливаете на новой установке WordPress? Получение идентификатора опроса из базы данных WP Как рассчитать среднее значение мета-значения (числовое) конкретного автора Цепной вызов ajax, второй вызов возвращает 0 Создать мета-окно на экране пользователя администратора? Как я могу идентифицировать медиа, загруженные на мой сайт, который больше не используется? Как я могу войти, когда я не могу получить доступ к wp-login.php? Загрузите tinyMCE / wp_editor () через AJAX Как я могу перечислить все страницы с их шаблонами? Сообщение о успехе в форме комментария Отображать только сообщения с эскизом, используя WP_Query Применить шаблон пользовательской категории к подкатегориям Комментарий Flag как неприемлемый плагин кнопки Исключить определенный блок из кеширования с помощью фрагментации Кэширование – не работает Как полностью скрыть установку WordPress / BuddyPress?

отличный стиль для отдельной страницы

Нам нужно стилизовать одну страницу по-разному в зависимости от того, какое путешествие вы совершаете. В настоящее время у нас есть сообщения о событиях, перечисленные в WP, они либо находятся на странице «участвовать в событиях», либо в «городском инновационном центре»), участвуют в мероприятии «некоторые события перечислены в обоих. Если вы участвуете в мероприятиях «участвовать», нам нужна единственная страница событий, на которой будет светлый фон, и если вы приехали из «городского инновационного центра», посетите мероприятие «нам нужна страница с одним событием, чтобы иметь темный фон. Мы не хотим дублировать события в WP.

https://futurecities.catapult.org.uk/events/

Solutions Collecting From Web of "отличный стиль для отдельной страницы"

Вы могли бы прослушать $_SERVER['HTTP_REFERER'] и добавить класс в тело в зависимости от этого референта

 add_filter( 'body_class','wpse_body_classes' ); function wpse_body_classes( $classes ) { if ( is_page( 'event' ) ){ // event is the page slug of the page we wish to add the class for if( wp_get_referer() == '/url/of/get_involved' ){ $classes[] = 'my-light-bg'; } elseif( wp_get_referer() == '/url/of/urban_innovation_center' ){ $classes[] = 'my-dark-bg'; } else { $classes[] = 'my-default-bg'; } } return $classes; } 

РЕДАКТИРОВАТЬ

Обновлен код

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

Помня о проблемах с проверкой рефери, я, вероятно, подойду к этому по-другому.

Я бы добавил параметр в постоянную ссылку с помощью add_query_arg . Добавленный параметр будет отличаться для каждой ссылочной страницы – например, get involved > events могут добавить class=my-light-bg , тогда как urban innovation center > attend an event может добавить class=my-dark-bg .

Сама страница событий могла бы получить этот параметр, посмотрев на $ _GET ['class'].

Преимущество в том, что даже при выходе из закладки или результатов поисковой системы будет представлен правильный стиль.