Как вывести подпись к картинки если я использую timthumb.php

Как вывести подпись к картинки если я использую timthumb.php | n-wp.ru
👍 Научим бесплатно правильно создавать сайты на WordPress. Подробнее →

Для вывода картинки поста я использую плагин timthumb.php, код вызова картинки использую такой:

 '')); else if (catch_that_image()) { ?><img src="/timthumb.php?src=&q=100&w=&h=" width="" alt="" />

Нужно что то подобное:

Я знаю что нужно использовать caption, но как это реализовать не могу додуматься.

Создай свой первый сайт на WordPress

DimaDodonov

Сегодня снова лягу спать завтра...

Оцените автора
Добавить комментарий

  1. tiaurus

    Вот тут пишут о шорткоде, выводящем с помощью скрипта timthumb картинки с подписью.

    Ответить
    1. DimaDodonov автор

      Спасибо, Но немного не то, я хочу сделать так что бы не вставлять в тело поста картинку а в sigle.php прописать скрипт timthumb и что бы он автоматически вставлял из миниатюры прикреплённой к посту: что то пипо того)

      Ответить
      1. tiaurus

        Любой шорткод можно интегрировать в шаблон (например, в single.php) с помощью функции do_shortcode.

        Ответить
        1. DimaDodonov автор

          Вот нашел один из способов реализовать мою задумку но он выводит название картинки а не подпись(

          function the_post_thumbnail_caption() {
            global $post;
          
            $thumb_id = get_post_thumbnail_id($post->id);
          
            $args = array(
          	'post_type' => 'attachment',
          	'post_status' => null,
          	'post_parent' => $post->ID,
          	'include'  => $thumb_id
          	); 
          
             $thumbnail_image = get_posts($args);
          
             if ($thumbnail_image && isset($thumbnail_image[0])) {
               //show thumbnail title
               echo $thumbnail_image[0]->post_title; 
          
               //Uncomment to show the thumbnail caption
               //echo $thumbnail_image[0]->post_excerpt; 
          
               //Uncomment to show the thumbnail description
               //echo $thumbnail_image[0]->post_content; 
          
               //Uncomment to show the thumbnail alt field
               //$alt = get_post_meta($thumbnail_id, '_wp_attachment_image_alt', true);
               //if(count($alt)) echo $alt;
            }
          }
          

          Может кто нибудь знает как вывести не название картинки а её подпись?

          Ответить
  2. DimaDodonov автор

    Александр спасибо за первую ссылку, в ней есть ответ на мой код)

    Готовая конструкция:

    Вставил в single.php

    <?php the_post_thumbnail(); ?>	//Непосредственно выводит саму картинку;<br>
    <?php the_post_thumbnail_caption(); ?>	//Выводит название, описание, подпись;
    

    Вставил в function.php

    function the_post_thumbnail_caption() {
      global $post;
    
      $thumb_id = get_post_thumbnail_id($post->id);
    
      $args = array(
        'post_type' => 'attachment',
        'post_status' => null,
        'post_parent' => $post->ID,
        'include'  => $thumb_id
        ); 
    
       $thumbnail_image = get_posts($args);
    
       if ($thumbnail_image && isset($thumbnail_image[0])) {
         //показать названия миниатюры
         echo $thumbnail_image[0]->post_title; 
    
         //Удалите скобки комментария,  чтобы показать подпись миниатюры
         //echo $thumbnail_image[0]->post_excerpt; 
    
         //Удалите скобки комментария, чтобы показать описание миниатюры
         //echo $thumbnail_image[0]->post_content; 
    
         //Удалите скобки комментария, чтобы показать alt миниатюры
         //$alt = get_post_meta($thumbnail_id, '_wp_attachment_image_alt', true);
         //if(count($alt)) echo $alt;
      }
    }

    Вот собственно всё…

    Ответить
  3. Piterkoshka

    Так я и не поняла, как сейчас это будет выглядеть?

    Ответить
  4. DimaDodonov автор

    Ну допустим передо мной стояла задача реализовать автоматическую вставку миниатюру поста с описанием в теле поста(single.php)

    Сейчас это выглядит так:

    если все ровно не понятно! вы можете посмотреть как это выглядит на этом сайте

    Ответить
    1. Piterkoshka

      Я к Вам уже заходила) Я сначала подумала, что Вы хотите, чтобы название картинки выводилось автоматом под картинкой. Еще подумала, какая хорошая задумка! Тогда даже вручную писать под ней ничего не нужно.

      Ответить
      1. DimaDodonov автор

        С помощью этого кода можно и это делать) достаточно открыть нужный комментарий! в коде)

        Ответить
  5. Piterkoshka

    А какой именно, подскажите, пожалуйста?)

    Ответить
    1. DimaDodonov автор

      Вставьте в нужное место в файле single.php

      <?php the_post_thumbnail(); ?>  //Непосредственно выводит саму картинку;
      <?php the_post_thumbnail_caption(); ?>  //Выводит название;

      Вставить в function.php

      function the_post_thumbnail_caption() {
        global $post;
      
        $thumb_id = get_post_thumbnail_id($post->id);
      
        $args = array(
          'post_type' => 'attachment',
          'post_status' => null,
          'post_parent' => $post->ID,
          'include'  => $thumb_id
          ); 
      
         $thumbnail_image = get_posts($args);
      
         if ($thumbnail_image && isset($thumbnail_image[0])) {
           //показать названия миниатюры
           echo $thumbnail_image[0]->post_title; 
      
           //Удалите скобки комментария,  чтобы показать подпись миниатюры
           //echo $thumbnail_image[0]->post_excerpt; 
      
           //Удалите скобки комментария, чтобы показать описание миниатюры
           //echo $thumbnail_image[0]->post_content; 
      
           //Удалите скобки комментария, чтобы показать alt миниатюры
           //$alt = get_post_meta($thumbnail_id, '_wp_attachment_image_alt', true);
           //if(count($alt)) echo $alt;
        }
      }

      Стили css как на моём сайте:

      .wp-caption { float:left; margin: 0 20px 0 0;}
      .wp-caption img { width:360px; height:207px;}
      .wp-caption-text {
      	width:360px;
      	font-size: 11px;
      	line-height: 17px;
      	margin: 0;
      	padding: 0 0px 0px;
      	margin-bottom:5px;color:#999;font-size:10px;text-align:right;
      }

      Вот собственно всё…

      Ответить
  6. Piterkoshka

    Спасибо! Завтра буду обновлять тему, постараюсь все рекомендации применить!

    Ответить