如何将WooCommerce产品输出到页面、设置样式和修改html结构

时间:2018-12-18 作者:Anders Kitson

说到woocommerce,我是一个彻头彻尾的傻瓜,所以请容忍我。我在woo中添加了6种产品。我有一个购物车和一个签出页面,它们使用短代码将php/html输出到相应的页面,现在我知道我可以按照woo文档使用覆盖以升级安全的方式编辑文件。我已经使用这种技术成功地修改了这些页面。

此外,我正在使用understrap-child 主题,因为它是自定义的,我需要添加吗add_theme_support 在我的功能中。php?如woo文档中所述。

现在我要实现我想要的目标。我想在wordpress中创建一个新页面,让我们调用它all-products 我想循环浏览我的所有产品并将它们显示在页面上,我还想访问可以覆盖该页面的html和php的php文件,我将如何做到这一点。我没有看到输出所有产品的短代码。这就是我被困的地方。如果这个问题不够清楚,我可以澄清。我会创建一个page-products 在我的主题中,使用下面这样的主题片段?

<ul class="products">
    <?php
        $args = array(
            \'post_type\' => \'product\',
            \'posts_per_page\' => 12
            );
        $loop = new WP_Query( $args );
        if ( $loop->have_posts() ) {
            while ( $loop->have_posts() ) : $loop->the_post();
                wc_get_template_part( \'content\', \'product\' );
            endwhile;
        } else {
            echo __( \'No products found\' );
        }
        wp_reset_postdata();
    ?>
</ul><!--/.products-->
另外,使用钩子覆盖某些模板是否更好here 有人能解释一下这个钩子是怎么做的吗,我不太明白代码的结局。

谢谢提前完成。

1 个回复
最合适的回答,由SO网友:RiddleMeThis 整理而成

要在站点上创建产品列表页面,只需在管理中创建一个普通页面。然后在管理中转到WooCommerce>Settings>Products>General,并选择该页面作为“Shop page”设置。

如果你想要一个定制的产品页面,你基本上可以按照上面所说的做。在管理中创建一个新页面,称其为“我的产品”。然后,您可以使用一个名为“页面我的产品”的页面模板。php,您可以在该模板中包含查询。

相关推荐

Hooks are not executing

根据我对钩子的理解,您可以通过do\\u action(“hook\\u name”)创建一个钩子;然后向所述钩子中添加一些内容,并在希望它执行钩子的位置调用该方法,因此:public function hook_name(){ do_action(\'hook_name\'); } 有些地方你会做类似的事情:add_action(\'hook_name\', \'some_hook\'); 然后在主题中的一些地方,你称之为:hook_name();