Как передавать данные по кругу?


У меня есть разные пункты меню. Когда пользователь нажимает на пункт меню, я хочу, чтобы они отправились в определенное место назначения. У каждого пункта назначения меню свой цвет фона.

Я думаю, что могу передать переменную и, основываясь на значении, я могу установить цвет bg.
Это всего лишь один пример того, почему я хочу передавать данные.

Есть ли в Wordpress что-нибудь встроенное, что позволяет мне это делать? Должен ли я использовать переменные сеанса?

 2
Author: milesmeow, 2010-08-28

2 answers

У меня есть разные пункты меню. Когда пользователь нажимает на пункт меню, я хочу, чтобы они отправились в определенное место назначения. У каждого пункта назначения меню свой цвет фона.

Когда вы говорите пункт назначения, я предполагаю, что вы имеете в виду страницу или сообщение. Если вы используете встроенные в WordPress классы body и post, вы можете настроить таргетинг на страницу или публикацию в своем CSS и назначить для каждой из них свой цвет фона.

Как использовать класс тела WordPress:

В header.php добавить body_class() между тегами body и WordPress назначит каждой странице отдельный класс. Тег тела:

<body <?php body_class(); ?>>

Это выведет ваш тег тела в html примерно так:

<body class="page page-id-11 page-template page-template-default">

Чтобы назначить цвет фона в css:

body.page-id-11 {
background:#000000;
}

Затем вы просто повторите описанное выше для каждой страницы, для которой требуется другой цвет фона.

Как использовать класс сообщений WordPress:

В файле шаблона, в котором отображается сообщение, single.php или index.php добавьте следующее в цикле:

<div id="post-<?php the_ID(); ?>" <?php post_class(); ?>>

Это выведет ваш html примерно так:

<div id="post-47" class="post-47 post type-post hentry category-your-category tag-your-tags">

Используйте CSS для таргетинга поста точно так же, как мы делали с телом, используя любой из выведенных классов или идентификаторов

 2
Author: Chris_O, 2010-08-29 01:35:29

WordPress не использует переменные сеанса... так что вы можете столкнуться с проблемами, если попробуете такой подход. Однако, судя по вашему описанию, я бы предложил добавить переменную через строку запроса URL. Для этого вы можете использовать систему постоянных ссылок WordPress или просто добавить "?bg=123" в конец URL-адреса. Затем используйте эту переменную, чтобы определить, какой цвет фона использовать.

 1
Author: EAMann, 2010-08-29 01:34:16