如何在WordPress中从媒体库获取页面动态展示图片的标题及描述
WordPress自定义产品页动态获取当前展示图片媒体信息问题
我有一个支持自定义产品的产品页,用户每做出一个选择,页面展示的图片都会同步变更。
我希望在用户点击按钮后,通过短代码从WordPress媒体库中获取当前展示图片的标题和描述。
目前我找到多篇帖子提到需要将如下代码插入functions.php:
function wp_get_attachment( $attachment_id ) { $attachment = get_post( $attachment_id ); return array( 'alt' => get_post_meta( $attachment->ID, '_wp_attachment_image_alt', true ), 'caption' => $attachment->post_excerpt, 'description' => $attachment->post_content, 'href' => get_permalink( $attachment->ID ), 'src' => $attachment->guid, 'title' => $attachment->post_title ); }
之后通过如下代码调用该函数:
$attachment_meta = wp_get_attachment($attachment_id);
但使用这段代码只能获取到产品页本身的标题和描述,并非我需要的图片对应信息。
另外我找到的获取页面图片attachment_id的方法需要手动操作,我需要在短代码中自动实现该逻辑。
我的完整代码如下:
add_shortcode( 'afficher_produits_devis2', function(){ $attachment_meta = wp_get_attachment($attachment_id); echo $attachment_meta['caption']; } ); function wp_get_attachment( $attachment_id ) { $attachment = get_post( $attachment_id ); return array( 'alt' => get_post_meta( $attachment->ID, '_wp_attachment_image_alt', true ), 'caption' => $attachment->post_excerpt, 'description' => $attachment->post_content, 'href' => get_permalink( $attachment->ID ), 'src' => $attachment->guid, 'title' => $attachment->post_title ); }
编辑2
我找到了该问题的可能解决方案,目前我还需要找到解析页面HTML获取图片URL的方法。
编辑3
我已经找到此前只能获取缩略图数据的原因:短代码在产品页加载时就直接触发,而非点击按钮时触发,因此只会执行一次,始终获取首次加载展示的缩略图信息。我已经修复该问题,功能符合预期。
内容的提问来源于stack exchange,提问作者Visual
相关产品推荐
相关产品推荐

