programing

Word press 첨부 파일 이미지 캡션 가져오기

bestprogram 2023. 3. 28. 22:44

Word press 첨부 파일 이미지 캡션 가져오기

여기서 언급한 첨부 파일 메타 캡션 값을 가져오려고 했지만 출력을 얻을 수 없습니다.[created_timestamp] 또는 [iso]와 같은 다른 메타 배열은 값을 제공합니다.

$img_meta = wp_get_attachment_metadata( $id );
echo $img_meta[image_meta][caption];

이 문제는 [caption]와 [title] 모두에서 발생합니다.어떤 도움이라도 감사합니다.

wp_get_attachment_metadata에서 얻고자 하는 캡션과 제목은 WordPress에 추가한 제목과 캡션이 아니라 실제 이미지 자체의 메타데이터입니다.WordPress 데이터를 가져오려면 다음과 같은 방법을 사용합니다($id가 이미지의 ID라고 가정).

$image = get_post($id);
$image_title = $image->post_title;
$image_caption = $image->post_excerpt;

WordPress 4.6.0 이후 지정된 게시물에 대한 캡션을 얻을 수 있습니다.

이것을 당신의 함수에 넣으세요.php 파일:

function show_caption_image($type='title'){
  global $post;
    $args = array( 'post_type' => 'attachment', 'orderby' => 'menu_order', 'order' => 'ASC', 'post_mime_type' => 'image' ,'post_status' => null, 'numberposts' => null, 'post_parent' => $post->ID );

    $attachments = get_posts($args);
    if ($attachments) {
        foreach ( $attachments as $attachment ) {
      $alt = get_post_meta($attachment->ID, '_wp_attachment_image_alt', true);
      $image_title = $attachment->post_title;
      $caption = $attachment->post_excerpt;
      $description = $image->post_content;
    }
  }  
  return $type == 'title' ? $image_title : $caption.$description;
}

테마 내의 이미지 아래 또는 원하는 위치에 배치하는 경우 보통 single.displaces 파일에 다음 작업을 수행합니다.

<?php if ( has_post_thumbnail() ) : 
        ?>
      <span class="image main"><img src="<?php echo get_the_post_thumbnail_url()?>" alt="<?php echo get_the_title()?>" /><i><?php echo show_caption_image();?></i></span>
      <?php endif; ?> 

언급URL : https://stackoverflow.com/questions/34658739/wordpress-get-attachment-image-caption