Intereting Posts
Сайт застрял в цикле «Обновление базы данных» Есть что-то вроде has_no_term разрешение / автор / на шаблон страницы или архива (всех авторов) Использовать пользовательскую базу данных с настраиваемым типом сообщения Почему в wp_get_attachment_image_attributes отсутствует правообладание? WordPress Media Library – Используемое пространство загрузки Как вывести список должностей в категории, за исключением сообщений в подкатегориях категории HTML-таблица из короткого кода с несколькими параметрами Можно ли полностью остановить записи WP_Query? Использование цикла внутри администратора как я могу фильтровать single_cat_title, чтобы удалить все экземпляры подробного слова Медиа-загрузчик не работает должным образом Добавить меню пользовательских списков на странице «Объявления» в панели администратора Как удалить тег Nextpage внутри текста сообщений в зависимости от utm_campaign Доступ к многомерному массиву JDON WPDB с Javascript

Категория как класс для пользовательского типа сообщения

Я только что понял, что пользовательские типы сообщений не выводят категорию как класс в цикле через post_class и мне интересно, может ли кто-нибудь предложить работу. Это что-то, что должно быть объявлено, когда я устанавливаю свой тип сообщения или это расширение post_class ?

Например, на посту типа post класс выводит что-то вроде: class="post-50434 post type-post status-publish format-standard hentry category-my-lovely-category tag-some-ace-tag" но для моего Тип персонализированной почты категория не отображается.

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

Вот немного моего кода, который может помочь прояснить, что я пытаюсь сделать – во-первых, хотя, на самом деле, я не пытаюсь получить класс на теле, а на статью в моем цикле:

 <?php $cat = get_the_category(); $parentCatName = get_cat_name($cat[0]->parent); ?> <article id="post-<?php the_ID(); ?>" <?php post_class(); ?> data-category="<?php echo $parentCatName; ?>" data-title="<?php the_title(); ?>"> [...] </article> 

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

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

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

  • Я использую макет изоляции изотопов

  • Я хочу фильтровать результаты с помощью атрибута «категория данных», добавленного к каждому сообщению во время цикла

  • Мои категории для нескольких типов сообщений (пост, продукт, курс) сгруппированы по общим родительским категориям

  • В моем цикле я поэтому хочу заполнить поле «категория данных» родительской категорией

Моя проблема возникает, поскольку я могу получить только категорию и, в свою очередь, родительскую категорию для стандартного типа сообщений по умолчанию, используя get_the_category.

Надеюсь, это имеет смысл.

Solutions Collecting From Web of "Категория как класс для пользовательского типа сообщения"

Это ожидаемое (или по крайней мере: спроектированное) поведение.

Вот часть Кодекса:

post_class CSS post_class отображаются на основе условных тегов post pageview следующим образом.

категория
Сегменты классов в файлах шаблонов шаблонов категорий и просмотров страниц имеют следующие категории: post post id id-category-name-name

Конечно, вы можете подключить пользовательскую функцию фильтра к фильтру post_class .

// РЕДАКТИРОВАТЬ
Согласно вашему обновленному вопросу, вот обновленный код:

 <?php $cat = wp_get_post_terms(get_the_ID(), 'category'); $parentCatName = get_cat_name($cat[0]->parent); ?> <article id="post-<?php the_ID(); ?>" <?php post_class(); ?> data-category="<?php echo $parentCatName; ?>" data-title="<?php the_title(); ?>"> [...] </article> 

Если вы также хотите добавить несколько классов сообщений, сделайте это так:

 post_class('category-'.$parentCatName);