Отображение одного товара WooCommerce на главной странице
В настоящее время я изучаю PHP и способы кастомизации WordPress.
У меня есть магазин, настроенный на WordPress с использованием плагина WooCommerce. В магазине только один товар. Поскольку у меня всего один товар для продажи, я хотел бы показать его на главной странице так, чтобы полная страница товара отображалась прямо на главной странице.
Вот код, который я пытаюсь заставить работать (он размещен в файле home.php):
$prodpage = array(
'post_type' => 'product',
'posts_per_page' => 1,
'taxonomy' => 'banner',
'term' => 'banner'
);
$featured_query = new WP_Query( $prodpage );
if ($featured_query->have_posts()) :
while ($featured_query->have_posts()) :
$featured_query->the_post();
$product = get_product( $featured_query->product->ID );
// Здесь вывод информации о товаре
endwhile;
endif;
wp_reset_query(); // Сброс запроса
Я также пробовал использовать query_posts таким образом:
if ( is_home() ) {
query_posts( 'p=31' );
}
Хорошая новость в том, что у меня нет ошибок синтаксиса. Плохая новость в том, что я боюсь, что где-то нарушена логика, так как я получаю страницу только с шапкой и подвалом WordPress. Центральная часть, где должен отображаться товар, не показывается.
Я очень ценю любую помощь, которую вы можете предоставить! :)
Почему бы просто не использовать шорткод product_page?
В содержимом страницы:
[product_page id="31"]
В коде шаблона главной страницы:
<?php echo do_shortcode('[product_page id="31"]'); ?>

Вау! Спасибо! Я наткнулся на этот метод в поисках, но подумал (точнее, предположил), что он выведет только миниатюру и кнопку добавления в корзину. Да уж... предположения. Еще раз, спасибо! :)

Я пробовал это, но он показывал только миниатюру и кнопку добавления в корзину. Код, который вы предоставили для ручного шорткода, на самом деле отображал полную страницу товара. Интересно, если бы я просто вставил [product_page id="31"] в свою запись WordPress, отобразилась бы полная страница? Бегу тестировать!
