web-dev-qa-db-ja.com

添付ファイルのキャプションを取得する方法(get_the_excerptは親投稿の抜粋を示します)?

このコードを使用して、添付ファイルを親の投稿ページに表示しています。

        $args = array('post_type' => 'attachment', 'post_mime_type' => 'image', 'order'=> 'ASC', 'numberposts' => -1, 'post_status' => null, 'post_parent' => $post->ID ); 
        $attachments = get_posts($args);
        if ($attachments) {
            foreach ( $attachments as $attachment ) {
            $attachments_url[] = $my_image;
            $attachments_caption[] = get_the_excerpt();
            }
        }

問題は、抜粋に添付ファイルのキャプションが表示されず、投稿の抜粋が表示されることです。

添付ファイルのキャプションの表示方法を知っていますか?ありがとうございました

4
rogaroga

get_the_excerpt() はキャプションをうまく取得するためにはたらくべきです。

あなたの問題はそれがグローバル変数で処理するポストを探すということです、そしてあなたのコードであなたはあなたが反復している添付ファイルでそれを設定していないということです。

動作させるには setup_postdata() を使う必要があります。

他の方法は次のようになります。

get_post_field('post_excerpt', $attachment->ID);
5
Rarst

wp_prepare_attachment_for_js( $id )を試して、添付ファイルに必要なものをすべて返すことができます。

あなたはこれで配列を受け取るでしょう:

  • id
  • タイトル
  • ファイル名
  • uRL
  • リンク
  • オルト
  • 著者
  • 説明
  • キャプション
  • 状態
  • uploadTo
  • 日付
  • 修正済み
  • menuOrder
  • パントマイム
  • タイプ
  • サブタイプ
  • アイコン
  • dateFormatted
  • ノンス
  • editLink
  • サイズ
  • 高さ
  • fileLength
  • 戦闘

コーデックをチェックしてください: wp_prepare_attachment_for_js()

4
Hrimiuc Paul