Are captions stored anywhere?

时间:2010-09-13 作者:Dan Gayle

关于我之前的question about shortcode captions, 在我看来,标题的实际文本并不是存储在短代码本身的帖子内容之外的任何地方。

我会认为wp_get_attachment_metadata 将存储附件的信息,但它不会。

我错了吗?或者WordPress没有在任何地方存储实际的标题?

2 个回复
最合适的回答,由SO网友:matt 整理而成

是的,它将标题存储在数据库中自己的位置。我无法引用确切的位置,但在Wordpress中,“附件”是一种帖子类型,它像帖子一样存储每个附件。对于附件帖子类型,它将图像标题视为the_excerpt 图像描述为the_content 图像标题为。。。the_title.

SO网友:Tom J Nowell

哪里$post_id 是当前帖子,此代码将输出帖子的所有附件及其标题说明和字幕

$q = new WP_Query( array(
    \'post_parent\' => $post_id,
    \'post_type\' => \'attachment\'
));
if($q->have_posts()){
    while($q->have_posts()){
        $q->the_post();
        ?>
        <h3><?php the_title(); ?></h3>
        <?php

        if ( wp_attachment_is_image( $post->id ) ) {
            $att_image = wp_get_attachment_image_src( $post->id, "large");
            ?>
<img src="<?php echo $att_image[0];?>" width="<?php echo $att_image[1];?>" height="<?php echo $att_image[2];?>"  class="attachment-large" alt="<?php $post->post_excerpt; ?>" />
            <?php
        }

        // caption
        the_excerpt();

        // description
        the_content();
    }
}
wp_reset_query();
附件是它们所附加到的帖子的所有子项,您可以使用它来创建自己的自定义库代码。它们的自定义字段中也有大量数据,例如图像尺寸、EXIF数据等,甚至可以对其进行评论。

您可以从内部循环中获取代码并将其放置在附件中。php在你的主题中,只需仔细检查一下,我在你之前没有做过任何语法错误。

结束

相关推荐