Shigaev
@Shigaev
кило

Как добавить в массив вызов post-class?

Привет. Вопрос от ни разу не программиста. К уже имеющимся стилям карточек постов Worpdress, нужно добавить айдишники их категорий. В моей теме, лента их не предусматривает, а макет требует стилизации карточек в зависимости от категорий. Насколько понимаю, нужно использовать post-class, но не знаю — как правильно его воткнуть и куда. Имеющиеся стили темы, формируются массивами примерно такого вида:
$post_card[] = 'data-style="' . $position_type . '"';

Вот вдобавок к ним, я хотел бы приклеить ещё и айдишник категории. Подскажете — как правильно?
  • Вопрос задан
  • 40 просмотров
Пригласить эксперта
Ответы на вопрос 1
@Aricus
Примерно так (за правильность не ручаюсь):
function add_post_class($classes) { // Функция для добавления
    foreach (get_the_category() as $cat) { // Составление массива категорий
        $categories[] = $cat->term_id;
    }
    if (in_array(5, $categories) { // Если среди категорий этого поста есть категория c id=5
        $classes[] = 'my_class'; // добавляем к массиву классов 'my_class'
    }
    return $classes;
}
add_filter('post_class', 'add_post_class');

Источники: тык, тык и тык.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы