こんにちは私はこれのための解決策を見つけようとしている年齢のために苦労しています。基本的に、投稿からすべての画像を取得してその下にキャプションを表示したいだけです。これが私が使っているコードです:
<?php
$argsThumb = array(
'order' => 'DESC',
'post_type' => 'attachment',
'post_parent' => $post->ID,
'post_mime_type' => 'image',
'post_status' => null
);
$attachments = get_posts($argsThumb);
if ($attachments) {
foreach ($attachments as $attachment) {
echo '<div class="slideshow-content"><img src="'.wp_get_attachment_url($attachment->ID, 'thumbnail', false, false).'" /><div class="captions"><p>'.apply_filters('the_title', $attachment->post_title).'</p></div></div>';
}
}
?>
ご覧のとおり、現在はタイトルが表示されていますが、キャプションは表示されていません。私は試してみました:$ caption = $ attachment-> post_excerpt; - しかし、どこにそれを実装するべきか、そして私が試したことがうまくいかないのか、正確にはわからない。任意の助けは大歓迎です!
以下はキャプションを表示するだけです。
echo '<div class="slideshow-content"><img src="'.wp_get_attachment_url($attachment->ID, 'thumbnail', false, false).'" /><div class="captions">'.apply_filters('the_excerpt', $attachment->post_excerpt).'</div></div>';
(抜粋フィルタを適用すると、段落タグが自動的に追加されます)
どのような状況でこのコードを実行しようとしていますか?
もしそれがループの中(例えば他の投稿の中)にあるのなら、どうして[gallery id="123"]
を使わないのですか?
もしそれがLoopの外側(あるいはPostコンテンツの外側)なら、どうしてdo_shortcode( 'gallery', $args )
を使わないのですか?