Почему это когда я использую wp_get_attachment_image_src(get_post_thumbnail_id($post_id));
Я ничего не получаю, однако, когда я var_dump
post_id
я получил string(3) "652"
так что я знаю, что есть удостоверение личности
Без (string)
это дает мне int(652)
Код:
<?php
$getPosts = new WP_Query(array('showposts' => 5, 'orderby' => 1));
if($getPosts->have_posts()):
$firstPost = true;
while($getPosts->have_posts()):
$getPosts->the_post();
$cssClass = '';
if($firstPost)
{
$cssClass = array('article','first-post');
$postValue = get_the_ID();
$post_id = (string)$postValue;
}else{
$cssClass = array('article');
}
?>
<?php if($firstPost): ?>
<?php $image = wp_get_attachment_image_src(get_post_thumbnail_id($post_id));?>
<a href="<?php echo $image[0];?>">Test</a>
Кажется, вы используете wp_get_attachment_image_src
неправильно, как описано в документации WordPress:
Возвращает упорядоченный массив со значениями, соответствующими URL (0), (1)
ширина, (2) высота и (3) масштаб вложения изображения (или значка)
представляя любое вложение).
Похоже, ваш код должен выглядеть следующим образом:
<?php if($firstPost): ?>
<?php
$image_attributes = wp_get_attachment_image_src(get_post_thumbnail_id($post_id));
$image = $image_attributes[0];
?>
<a href="<?php echo $image;?>">Test</a>
РЕДАКТИРОВАТЬ: На самом деле, я все еще не уверен, что вы используете, когда вы делаете это:
<a href="<?php echo $image;?>">Test</a>
Вы устанавливаете URL изображения в <a href></a>
? Зачем? Разве это не должно быть так:
<img src="<?php echo $image;?>" />
Других решений пока нет …