Показать выбранное изображение в инструкции else

Это как я загружаю изображение миниатюр сообщения?

Что делать, если изображения нет, я хочу показать изображение по умолчанию?

Как я могу это показать.

Вот код, который я использую для отображения эскизов.

$html .= '<div class="post event" id="post-'.$post->ID.'"> <a href="'.get_permalink($post->ID).'"> '.get_the_post_thumbnail().' </a> <div class="content"> <span class="title"> <a title="'.$post->post_title.'" href="'.get_permalink($post->ID).'">'.$post->post_title.'</a> </span> <div class="addl-123">'; $terms = wp_get_post_terms($post->ID, 'sublocation'); if($terms) { $out = array(); foreach ($terms as $term) { $out[] = '<a class="' .$term->slug .'" href="' .get_term_link( $term->slug, 'sublocation') .'">' .$term->name .'</a>'; } //echo join( ', ', $out); $html .= join( ', ', $out); } if($is_parent != 0) { $address = get_post_meta($is_parent,'address',true); } else { $address = get_post_meta($post->ID,'address',true); } if(!$address){ $address='-'; } if($address && $address!="-"){$html .= "<b>".$address."</b>";} $html .= '<p>Timinigs: '.get_post_meta($post->ID, 'cstimings', true). ' </p>'; $html .= '</div> 

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

Как я могу это сделать ?

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

 <?php $featured_image = ( '' != get_the_post_thumbnail() ? get_the_post_thumbnail() : get_template_directory_uri() . '/images/img_not_available.png' ); ?> <a href="<?php the_permalink(); ?>"><?php echo $featured_image; ?></a> 

редактировать

Три изменения:

  1. Более явный условный. get_the_post_thumbnail() возвращает пустую строку, а не false если изображение не найдено.
  2. Обновлено изображение по умолчанию с вашим. Примечание: используйте get_template_directory_uri() а не get_stylesheet_directory_uri() .
  3. Убрал вкрапленный PHP / HTML, чтобы устранить синтаксические ошибки

Также обратите внимание: пример кода предполагает контекст внутри цикла . Измените соответственно, если он используется вне цикла.

Этот код работает с файлом функций ваших дочерних тем.

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

  function wpforce_featured() { global $post; $already_has_thumb = has_post_thumbnail($post->ID); if (!$already_has_thumb) { $attached_image = get_children( "post_parent=$post->ID&post_type=attachment&post_mime_type=image&numberposts=1" ); if ($attached_image) { foreach ($attached_image as $attachment_id => $attachment) { set_post_thumbnail($post->ID, $attachment_id); } } else { set_post_thumbnail($post->ID, '414'); } } } //end function add_action('the_post', 'wpforce_featured'); add_action('save_post', 'wpforce_featured'); add_action('draft_to_publish', 'wpforce_featured'); add_action('new_to_publish', 'wpforce_featured'); add_action('pending_to_publish', 'wpforce_featured'); add_action('future_to_publish', 'wpforce_featured'); 

Источник http://wpforce.com/automatically-set-the-featured-image-in-wordpress/

Что-то вроде этого?

 <?php if ( has_post_thumbnail()): the_post_thumbnail(); else: ?> <!-- Do default stuff here --> <?php endif; ?>