Лучший способ показать описание и изображение. Подписи.

Я использую этот код для отображения «Featured Image» Captions / Descriptions, также я покажу свой div с надписями / описаниями, только если они существуют. Потому что мои навыки PHP не лучшие
Мой вопрос: есть ли лучший способ (WordPressy) для достижения этого?
Спасибо.

<?php $get_desc = esc_html(get_post(get_post_thumbnail_id())->post_content); $get_caption = esc_html(get_post(get_post_thumbnail_id())->post_excerpt); $merge = $get_caption . '<br/>' . $get_desc; the_post_thumbnail(); if(!empty( $get_caption ) && empty( $get_desc )){//If caption is not empty show the div echo '<div class="featured_caption">' . $get_caption . '</div>'; } else if(!empty( $get_desc ) && !empty( $get_caption )){ //If both caption and description are not empty show the div echo '<div class="featured_caption">' . $merge . '</div>'; } else if(empty( $get_caption ) && !empty( $get_desc )){//If description is not empty show the div echo '<div class="featured_caption">' . $get_desc . '</div>'; } ?> 

Здесь нет ничего особенного в WordPress, но вы могли бы упростить чтение кода, удалив повторяющиеся части.

 if ( $id = get_post_thumbnail_id() ) { $post = get_post( $id ); $data = array( $post->post_content, $post->post_excerpt ); // remove empty elements from array $data = array_map( 'trim', $data ); $data = array_filter( $data ); // escape the elements $data = array_map( 'esc_html', $data ); if ( ! empty ( $data ) ) print '<div class="featured_caption">' . join( '<br />', $data ) . '</div>'; }