Вызов неопределенной функции post_image_thumbnail () Ошибка

Недавно я изменил свою тему WordPress. У меня есть настраиваемый шаблон страницы, который я пытаюсь перейти к новой теме, но теперь настраиваемый шаблон страницы выдает ошибку.

Неустранимая ошибка: вызов неопределенной функции post_image_thumbnail() в [ссылка на URL пользовательской страницы] в строке 55

Я подумал, что это может быть дочерняя тема, не поддерживающая миниатюры, поэтому я добавил это в functions.php дочерней темы:

add_theme_support( 'post-thumbnails' );

Но это ничего не решило.

Может ли кто-нибудь помочь отладить мой код? Может, у меня синтаксическая ошибка, которую я не вижу?

<h3><?php echo get_cat_name(26);?></h3>
<?php query_posts(array('category__and'=>array(75,26),'meta_key'=>'wpcf-sortname','orderby'=>'meta_value','order'=>ASC,'posts_per_page' => -1));if ( have_posts() ) while ( have_posts() ) : the_post(); ?><div class="indentlist"><?php post_image_thumbnail(); ?><div style="clear:both;"></div><a href="<?php the_permalink() ?>" class="participants"><?php the_title(); ?></a></div><?php endwhile; // end of the loop. ?>

Спасибо!


person butterscotch    schedule 18.01.2017    source источник


Ответы (3)


Ваша старая тема содержала функцию, которой нет в вашей новой теме. Контент, который вы переместили из старой темы в новую, вызывает недостающую функцию, что приводит к ошибке.

Лучше всего переместить недостающую функцию в новую тему. Это может оказаться сложнее, чем простое копирование / вставка.

Альтернативой может быть замена post_image_thumbnail(); в опубликованном вами коде на the_post_thumbnail( 'SIZE' );. Измените 'SIZE' на допустимое имя размера изображения. Вы можете попробовать включить 'large' и 'full'.

person Nathan Dawson    schedule 18.01.2017
comment
Спасибо! Я попробую оба эти варианта. - person butterscotch; 20.01.2017
comment
Я скопировал код functions.php, который применялся к эскизам, и он работает. Большое спасибо! - person butterscotch; 20.01.2017

в archive-product.php я добавляю следующий код:

<?php
add_action( 'woocommerce_archive_description', 'woocommerce_category_image', 2 );
function woocommerce_category_image() {
    if ( is_product_category() ){
        global $wp_query;
        $cat = $wp_query->get_queried_object();
        $thumbnail_id = get_woocommerce_term_meta( $cat->term_id, 'thumbnail_id', true );
        $image = wp_get_attachment_url( $thumbnail_id );
        if ( $image ) {
            echo '<img src="' . $image . '" alt="" />';
        }
    }
}
?>

Я нашел это на странице woocommerce, потому что другой код предназначен для изображения сообщения, которое я понимаю, но это не функции,

Спасибо

person Noe_sp    schedule 07.02.2017

У меня была аналогичная проблема, но я не нашел ответа.

Я хотел бы разместить миниатюру изображения на странице категории woocommerce. Для этого я добавляю следующий код в taxonomy-product_cat.php:

/* indicar thumbnail category product */
if ( has_category_thumbnail() ) {
  the_category_thumbnail();
}else{
echo '<img alt="Imagen por defecto" src="#"; />';
}

Я также добавляю в functions.php этот код:

add_theme_support('category-thumbnails');

Я поместил в admin wp в категорию страницы woocommerce изображение для миниатюры, но на странице категории woo есть следующая ошибка:

Вызов неопределенной функции has_category_thumbnail()

person Noe_sp    schedule 07.02.2017