Intereting Posts
wp-load.php классы redeclares Классы CSS для темы Массивные теги Удаление с помощью MySQL Проблемы с автозагрузкой классов через sp_autoload_register / возможно, помеха для WP-специфического автозагрузчика Получить определенное поле из таксономического термина через расширенные настраиваемые поля Как напечатать shortcode с js в визуальном композиторе? Найти по post_meta, затем отсортировать по post_meta, затем отсортировать по дате (wp_posts) Как добавить определенные метатеги в голову корзины и страницы проверки в woocommerce? Ограничить доступ к wp-login.php Перенаправление перенаправления. Как получить заголовок категории в пользовательском цикле? Пользовательское имя мета для пользовательского типа сообщения Удалите WYSIWYG-редактор во всех пользовательских типах сообщений EXCEPT Не удается получить доступ к панели мониторинга многопользовательского WordPress. Chrome приводит к «ERR_TOO_MANY_REDIRECTS» Прикрепить отметку времени / даты на add_post_meta

Как использовать функцию post_class?

Я хотел бы использовать эту функцию, но я не знаю правильно, что является идеальным способом.

Код:

<li id="post-<?php the_ID(); ?>" <?php post_class(get_the_content() == "" ? "no-content" : ""); ?> <?php post_class(has_post_thumbnail() ? "" : "no-image"); ?>> 

Есть два утверждения if. В настоящее время только первая работающая, вторая не, но если я удалю первый <?php post_class(get_the_content() == "" ? "no-content" : ""); ?> <?php post_class(get_the_content() == "" ? "no-content" : ""); ?> второй работает. Как можно объединить эти строки?

Используйте фильтр post_class для проверки нескольких условий:

 function wpa_post_class( $classes ) { global $post; if( ! has_post_thumbnail() ) $classes[] = "no-image"; if( get_the_content() == "" ) $classes[] = "no-content"; return $classes; } add_filter( 'post_class', 'wpa_post_class' ); 

Тогда ваш html будет просто:

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