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

.has-post-thumbnail .entry-featured-media.entry-featured-media-main { display:none } 

Я сомневаюсь, что это может быть сделано только через CSS. Нашел этот ответ на похожую проблему.

Попробуй это:

добавить в functions.php:

 function catch_that_image() { global $post, $posts; $first_img = ''; ob_start(); ob_end_clean(); $output = preg_match_all('/{amp}lt;img. src=['"]([^'"] )['"].*{amp}gt;/i', $post-{amp}gt;post_content, $matches); $first_img = $matches [1] [0]; if(empty($first_img)){ //Defines a default image $first_img = "/images/default.jpg"; } return $first_img; } 

Затем поместите следующее в ваш пост php (single.php или шаблон, который вам нужен):

 if (!catch_that_image()) { if ( has_post_thumbnail()) { the_post_thumbnail(); } } 

Это ( if (!catch_that_image()) ) проверит, нет ли изображения в содержимом сообщения.

Андрей Калинин

новый участник этого сайта. Будьте внимательны, спрашивая разъяснения, комментируя и отвечая. Проверьте наш

Кодекс поведения

,