Intereting Posts

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

Нам нужно стилизовать одну страницу по-разному в зависимости от того, какое путешествие вы совершаете. В настоящее время у нас есть сообщения о событиях, перечисленные в 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'].

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