Поддержка Проблемы и решения Как вывести подпись под картинкой

  • Решено Vlad

    (@foxmoney988)


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

    Страница, с которой нужна помощь: [войдите, чтобы увидеть ссылку]

Просмотр 10 ответов — с 1 по 10 (всего 10)
  • но текст не отображается под картинкой.

    Отображается:
    В мережі вже показали наслідки «роботи» вандалів.

    Модератор Yuri

    (@yube)

    А как вставляли картинку в пост?

    У мня с этой Темой совсем другой html получается:

    <figure>
       <img>
       <figcaption>
    </figure>

    в то время как у Вас

    <div>
        <img>
    </div>

    Если используете какие-то аццкие оптимизаторы html, попробуйте отключить (предварительно очистив их кэши)

    p.s. Я, кажется, понял. У Вас это не картинка, вставленная в пост, а «изображение записи». Да? Тогда надо делать дочернюю тему и в ней менять код вывода картинки.

    • Ответ изменён 3 месяца, 2 недели назад пользователем Yuri. Причина: кажись, дошло ))

    Здравствуйте, подскажите, а какой должен быть код вывода картинке.

    Можете пример кода скинуть?

    Модератор Yuri

    (@yube)

    какой должен быть код вывода картинке.

    HTML должен быть примерно такой же, как при выводе картинки, вставленной в пост (вставьте и посмотрите)

    Если без деталей, то как-то так:

    <figure>
        <img class="wp-post-image" src="XXXXXXXX">
        <figcaption class="wp-caption-text">Подпись</figcaption>
    </figure>
    

    Это понятно, а как это в php прописать и где?

    Модератор Yuri

    (@yube)

    как это в php прописать и где?

    В файле voluto/inc/class-voluto-single-post-page.php в методе Voluto_Single_Post_Page::entry_header есть следующий фрагмент кода

    				<div class="post-thumbnail">
    					<?php
    					the_post_thumbnail( 'voluto-900x9999', array(
    						'alt' => the_title_attribute( array(
    							'echo' => false,
    						) ),
    					) );
    					?>
    				</div>

    Его следует заменить на следующий код (при необходимости по месту подправить)

    				<figure class="post-thumbnail">
    					<?php
    					the_post_thumbnail( 'voluto-900x9999', array(
    						'alt' => the_title_attribute( array(
    							'echo' => false,
    						) ),
    					) );
    					?>
    					<figcaption class="wp-caption-text">
    						<?php echo wp_get_attachment_caption(get_post_thumbnail_id()); ?>
    					</figcaption>
    				</figure>

    Как это сделать, не трогая оригинальные файлы темы, придумайте самостоятельно или спросите у автора темы.

    Спасибо. Очень помогли. А подскажите пожалуйста а как на этом сайте вывести https://kolomyia24.com.ua/ не могу понять куда код вставить

    Модератор Yuri

    (@yube)

    а как на этом сайте вывести

    В functions.php дочерней Темы добавить

    if ( ! function_exists( 'bnm_post_thumbnail' ) ) :
    	/**
    	 * Displays an optional post thumbnail.
    	 *
    	 * Wraps the post thumbnail in an anchor element on index views, or a div
    	 * element when on single views.
    	 */
    	function bnm_post_thumbnail( $size = 'bnm-featured-image' ) {
    		if ( post_password_required() || is_attachment() || ! has_post_thumbnail() ) {
    			return;
    		}
    
    		if ( is_singular() ) :
    			?>
    
    			<figure class="post-thumbnail">
    				<?php the_post_thumbnail( $size ); ?>
    				<figcaption class="wp-caption-text">
    					<?php echo wp_get_attachment_caption(get_post_thumbnail_id()); ?>
    				</figcaption>
    			</figure><!-- .post-thumbnail -->
    
    		<?php else : ?>
    
    			<div  class="post-thumbnail">
    				<a href="<?php the_permalink(); ?>" aria-hidden="true" tabindex="-1">
    					<?php
    						the_post_thumbnail(
    							$size,
    							array(
    								'alt' => the_title_attribute(
    									array(
    										'echo' => false,
    									)
    								),
    							)
    						);
    					?>
    				</a>
    			</div><!-- .post-thumbnail -->
    
    			<?php
    		endif; // End is_singular().
    	}
    endif;
    

    Очень надеюсь, что с остальными своими сайтами Вы справитесь самостоятельно.

    Спасибо

    Спасибо, большое

Просмотр 10 ответов — с 1 по 10 (всего 10)