Php 获取Wordpress特色图片“;alt";
我试图获取页面的特色图片alt并将其作为段落文本进行回显,但我的代码似乎不起作用 我目前能够回显图像,它工作得很好 以下是我使用的代码:Php 获取Wordpress特色图片“;alt";,php,wordpress,Php,Wordpress,我试图获取页面的特色图片alt并将其作为段落文本进行回显,但我的代码似乎不起作用 我目前能够回显图像,它工作得很好 以下是我使用的代码: <?php get_header(); ?> </div> <?php /* The loop */ ?> <?php while ( have_posts() ) : the_post(); ?> <div class="header-image">
<?php
get_header(); ?>
</div>
<?php /* The loop */ ?>
<?php while ( have_posts() ) : the_post(); ?>
<div class="header-image">
<?php echo get_the_post_thumbnail($page->ID, 'full'); ?>
<?php $alt = get_post_meta( $attachment_img->ID, '_wp_attachment_image_alt', true ); ?>
<p><?php echo $alt; ?></p>
</div>
这里有一个:
$thumbnail\u id=get\u post\u thumbnail\u id($post->id);
$thumbnail\u image=get\u posts(数组('p'=>$thumnail\u id,'post\u type'=>'attachment');
if($thumbnail\u image&&isset($thumnail\u image[0])){
回显'.$thumbnail_image[0]>post_摘录';
}
或者您可以使用您的代码,但不需要直接回显
$alt
,您需要回显$alt->post\u摘录
检查是否获得正确的缩略图id。对我来说,这段代码非常有效:
$thumbnail_id = get_post_thumbnail_id( $post->ID );
$alt = get_post_meta($thumbnail_id, '_wp_attachment_image_alt', true);
如果你想得到你的特色图片的alt文本,你可以用下面的代码得到它
<?php echo get_post_meta( get_post_thumbnail_id(), '_wp_attachment_image_alt', true); ?>
所以,如果你想把它放在一个p标签中,这将起作用
<p><?php echo get_post_meta( get_post_thumbnail_id(), '_wp_attachment_image_alt', true); ?></p>
希望它能帮助您,或者至少对某人有所帮助。您是否有一个名为
\u wp\u attachment\u image\u alt的自定义字段与此帖子关联?另外,我建议您在回显之前执行var\u dump($alt)
,以便查看它是否为null及其类型。嗨,不,我没有任何自定义字段,它应该从特征图像属性中提取alt。您是否尝试获取文章或页面的特征图像?您是否可以检查$attachment\u img->ID并查看它是否具有正确的ID?或任何值?每次我使用此代码时,它都会将ID输出到屏幕。我怎么才能阻止它那样做?奇怪。你确定这两条线是这样做的吗?这些函数都不能打印任何内容。get\u post\u缩略图\u id
和get\u post\u meta
仅返回值(不显示它们)。你能粘贴你的代码吗?我想出来了,我用的是_id()而不是输出帖子id。哎呀。特色图片alt文本存储在\u wp\u attachment\u image\u alt
元中,而不是在帖子摘录中。你应该始终清理输出,因此在这种情况下最好将其全部打包到esc\u html
中。
<p><?php echo get_post_meta( get_post_thumbnail_id(), '_wp_attachment_image_alt', true); ?></p>