如何从WordPress图片附件中获取图片`alt`值?

时间:2017-09-08 作者:bellabelle

我正在Wordpress上使用一个WCK插件。在调用图像源代码的php代码中,我使用wp_get_attachment_image_src() 但它只获取图像的url。我想包括它的alt值。请帮忙。谢谢

下面是我的代码。

<div class="authortest-cont">
                <h2><span>W</span>hat Our <small>Authors Say</small></h2>
                <?php
                $wck_custom = get_post_meta( $post->ID, \'testimonialsbox\', true);
                foreach($wck_custom as $wck_cstm) {

                    $author_name = $wck_cstm[\'author_name\'];                            
                    $author_img = $wck_cstm[\'author_img\'];
                    $author_testimonial = $wck_cstm[\'author_testimonial\'];

                    if( is_numeric( $author_img ) ) {
                        $attach_author_img = wp_get_attachment_image_src( $author_img, \'full\' );
                        $src_author_img = $attach_author_img[0];
                    }
                    else {
                        $src_author_img = $author_img;
                    }

                ?>


                <div class="col-md-6 col-sm-6">
                    <?php echo $author_testimonial; ?>
                    <div class="author-det">
                        <img src="<?php echo $src_author_img; ?>" alt=""/>
                    </div>
                </div>

                <?php } ?>
            </div>
如何echo 该图像的alt值?

2 个回复
SO网友:Jeff Mattson

您应该如何使用WCK:

<?php
foreach( get_cfc_meta( \'testimonialsbox\' ) as $key => $value ){ ?>
    <?php $author_testimonial = $key[\'author_testimonial\']; ?>
    <?php $photo_obj = get_cfc_field( \'testimonialsbox\',\'photo\', false, $key );  ?>
    <div class="col-md-6 col-sm-6">
        <?php echo $author_testimonial; ?>
        <div class="author-det">
            <img src="<?php echo $photo_obj[\'url\'] ?>" alt="<?php echo $photo_obj[\'alt\']; ?>"/>
        </div>
    </div>
<?php } ?>

SO网友:Jacob Peattie

wp_get_attachment_image() 将生成完整的图像标记,包括alt属性。如果您需要在映像上放置自定义类或属性(一个原因是您可能只需要src),您仍然可以使用该函数通过使用第4个参数来实现这一点:

echo wp_get_attachment_image( $attachment_id, \'large\', false, array( \'class\' => \'my-custom-class\' ) );
如果您只需要alt文本本身,那么给定附件的ID,您可以直接使用:

echo get_post_meta( $attachment_id, \'_wp_attachment_image_alt\', true );

结束

相关推荐

Featured images get shrunken

上传特色图片时,我遇到的问题是,所有图片都会自动缩小。我想保留原始图像。检查this example. 所有员工的图片都会自动缩小,但在特色图片中,我上传了员工的完整图片。我认为图像太大,wordpress会自动缩小图像,因此,我在媒体库中缩放并裁剪了图像。一些图像已修复,但一些图像仍然存在问题。有没有一种方法可以让原始上传的图像按原样显示?