Intereting Posts
500 Внутренняя ошибка сервера при обновлении htaccess Понимание и изменение структуры размещенных изображений Нужна помощь при перезаписи permalink для пользовательских типов сообщений с иерархическими отношениями Как вставить категорию и подкатегорию с помощью функции «wp_insert_post»? Загрузка разных таблиц стилей на страницах WordPress? ТРЕБУЕТСЯ: Не удалось найти wp_link_pages. Смотрите: wp_link_pages по теме Checker получить все сообщения ID из категории Условный, основанный на post meta можете ли вы вносить изменения в тему в trac, пока она ждет обзора? Разработка мобильной версии сайта WordPress Очистка WordPress для повышения производительности? Показывать только сообщения из одной категории на странице архива типа персонализированного сообщения Создание пользовательских таксономий атрибутов Woocommerce из плагина Создание отформатированного табличного меню После оплаты e-junkie отправьте сообщение http для регистрации пользователя автоматически?

Как добавить / вставить класс на боковую панель в single.php?

У меня есть боковая панель, отображающая в домашних и одиночных страницах. Когда он появляется на домашней странице, он имеет уже определенный класс css (ширина: 30%),

Когда он появляется на одной странице, я хочу добавить / вставить новый класс на эту боковую панель. Я хочу, чтобы этот новый стиль изменял предифицированные элементы. Таким образом, он заканчивается шириной 35%

Я попытался сделать это следующим образом:

В functions.php (дочерняя тема)

function sidebar_class() { if ( is_single() ) { $class = 'sidebar-single'; } return $class; } 

В sidebar.php

 <div id="secondary" class="sidebar1-area <?php sidebar_class(); ?>" role="complementary"> 

Результат html должен быть:

 <div id="secondary" class="sidebar1-area sidebar-single" role="complementary"> 

Исходные значения css для класса

 width: 30% 

Конечный результат

 width:35% 

Как я могу выполнить это наиболее эффективным способом?

Solutions Collecting From Web of "Как добавить / вставить класс на боковую панель в single.php?"

Как я могу выполнить это наиболее эффективным способом?

Как указывает Rarst , не меняйте класс, чтобы изменить стиль. Оставьте класс тем же и используйте CSS Specificity для изменения стиля на определенных страницах.

Когда WordPress создает страницу в теме, которая использует body_class() она добавляет много информации о странице в классе html тега body. Посмотрите на этот тег на странице, созданной single.php, и этот класс будет включать имя класса single .

Используйте это, чтобы указать стиль для файлов single.php.

 #secondary { /** These styles work on all pages. */ } body.single #secondary { /** These styles only work on single.php pages. */ } body.home #secondary { /** These styles only work on home pages. */ } 

См. body_class() для получения подробных сведений о том, какие классы добавлены.