Я занимаюсь созданием собственного сайта электронной коммерции и хочу показать некоторые товары на другой странице.
Когда я копирую этот l oop со страницы архива на мою целевую страницу, он ничего не выводит
<?php
if (woocommerce_product_loop()) {
woocommerce_product_loop_start();
if (wc_get_loop_prop('total')) {
while (have_posts()) {
the_post();
/**
* Hook: woocommerce_shop_loop.
*/
do_action('woocommerce_shop_loop');
wc_get_template_part('content', 'product');
}
}
woocommerce_product_loop_end();
/**
* Hook: woocommerce_after_shop_loop.
*
* @hooked woocommerce_pagination - 10
*/
do_action('woocommerce_after_shop_loop');
} else {
/**
* Hook: woocommerce_no_products_found.
*
* @hooked wc_no_products_found - 10
*/
do_action('woocommerce_no_products_found');
}
?>
Насколько я знаю, woocommerce_product_l oop () возвращает true (1), но wc_get_prop ('total') возвращает 0, что соответствует значениям по умолчанию wc_setup_l oop () , вызываемым в wc_get_loop_prop () до возвращая истину или ложь. Я не могу найти, чтобы wc_setup_l oop () вызывался до того, как мы запустили продукт-архив. php products l oop, так почему же все работает там, а не на моей целевой странице; кроме окружающего HTML и нескольких действий, код похож.
Причина, по которой я просто хочу скопировать и вставить этот код, это эксперименты, просто сводит меня с ума, что он не будет работать свободная sh страница.
Если это поможет, моя страница выглядит примерно так:
<?php get_header();?>
<div>
<!-- paste code here -->
</div>
<?php get_footer();?>
ПРИМЕЧАНИЕ: я php новичок ie