Вызов массива в проблемах с шорткодами

Я сгущаю некоторую область повторяющегося кода в нескольких шаблонах в один шорткод, который я могу легко использовать повторно.

Я называю URL рекомендуемого изображения как встроенный стиль фонового изображения, он прекрасно работает! Вот код

<?php $image = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), 'single-post-thumbnail' ); ?>
<?php while (have_posts()) : the_post(); ?>
<div class="single-casestudy" style="background-image: url('<?php echo $image[0]; ?>'); background-size: 100%;">
<div class="case-study-content">
<h4><?php the_title(); ?></h4>
<p><?php echo excerpt(22); ?></p>
</div>
</div>
<?php endwhile ; ?>

Это отлично работает, когда нет в шорткоде, и я могу видеть мое изображение в качестве фона на живом сайте, однако, если поместить его в функцию шорткода, это не ошибка, просто не работает! Вот код, который я использую для функциональности шорткода. Кажется, что $ image [0] не вытягивает какие-либо данные в массив.

function otherinfo_function() {
$args = array( 'post_type' => 'casestudy',
'posts_per_page' => -1,
'orderby' => menu_order,
'order' => RAND
);

query_posts($args);

$image = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ),'single-post-thumbnail' );
while (have_posts()) : the_post();

echo $image[0];
$output = $output . '<div class="single-casestudy" style="background-image: url(' . $image[0] .'); background-size: 100%;">';
$output = $output . '<div class="case-study-content">';

$output = $output . '<h4>' . get_the_title() . '</h4>';
$output = $output . '<p>' . excerpt(22) . '</p>';

$output = $output . '</div>';
$output = $output . '</div>';

endwhile ;

$output = $output . '</div>';
return $output;
}

add_shortcode('otherinfo', 'otherinfo_function');

Если бы кто-то мог помочь, это было бы супер здорово!

Сэм

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]