首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >向WordPress图像添加完整的元数据

向WordPress图像添加完整的元数据
EN

Stack Overflow用户
提问于 2017-01-05 11:07:26
回答 2查看 50关注 0票数 0

我用下面的代码将图像调用到single.php中以添加CSS

single.php

代码语言:javascript
复制
<? if( has_post_thumbnail( $post_id ) ): ?>
    <div class="post-image">
        <img src="<?=wp_get_attachment_url( get_post_thumbnail_id() ); ?>">
    </div>
<? endif; ?>

问题是,我现在发现,当我点击编辑媒体时,通过CMS添加的元数据没有显示。

有人知道如何将它们编码到我的single.php中吗?

我的完整的single.php

代码语言:javascript
复制
<?php get_header(); ?>

<? if( has_post_thumbnail( $post_id ) ): ?>
    <div class="single-featured-image post-image">
        <h1><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h1>
        <img src="<?=wp_get_attachment_url( get_post_thumbnail_id() ); ?>">
    </div>
<? endif; ?>

<img src="<?php echo $url; ?>" />

    <div class="blog-post">
            <?php
            if ( have_posts() ) : while ( have_posts() ) : the_post();
                get_template_part( 'content-single', get_post_format() );

                if ( comments_open() || get_comments_number() ) :
                    comments_template();
                endif;

            endwhile; endif;
            ?>
    </div>
</div> // closes of container

<?php get_footer(); ?>
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-01-05 11:32:31

要获得"alt“属性,您需要使用get_post_meta作为附件id。但是对于标题标题,您需要直接检索附件帖子,因为该信息存储在wp_posts中。

所以你可以这样做:

代码语言:javascript
复制
<?php if( has_post_thumbnail( $post_id ) ):
    $pic_id      = get_post_thumbnail_id();
    $pic         = get_post( $pic_id );
    $caption     = $pic->post_excerpt;
    $image_alt   = get_post_meta( $pic->ID, '_wp_attachment_image_alt', true );
    $image_title = $pic->post_title;
    ?>
    <div class="post-image">
        <h4><?php echo $image_title; ?></h4>
        <img src="<?php echo wp_get_attachment_url( $pic_id); ?>" alt="<?php echo $image_alt; ?>">
        <span class="description"><?php echo $caption;?></span>
    </div>
<? endif; ?>

更改HTML以适应您的需要,我不知道您想在哪里显示图例和标题。

票数 0
EN

Stack Overflow用户

发布于 2017-01-05 11:26:05

您可能需要的是元数据。示例:

代码语言:javascript
复制
$meta_value = get_post_meta( get_the_ID(), 'meta_key_name', true );

get_the_ID()将是当前帖子的Id。用我们自己的元密钥替换meta_key_name

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41483441

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档