Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/269.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Woocomece Wordpress PHP包装店中的物品_Php_Wordpress_Woocommerce_Hook Woocommerce - Fatal编程技术网

Woocomece Wordpress PHP包装店中的物品

Woocomece Wordpress PHP包装店中的物品,php,wordpress,woocommerce,hook-woocommerce,Php,Wordpress,Woocommerce,Hook Woocommerce,我正在构建一个主题,但遇到了一点问题,我正在尝试修改/shop页面模板 我当前的HTML输出如下: <div class="row"> <section id="nav_menu-3" class="col-md-3"> [nav menu items go here] </div> // this is a sidebar widget <ul class="products columns-3"> <li> [woocomerce

我正在构建一个主题,但遇到了一点问题,我正在尝试修改/shop页面模板

我当前的HTML输出如下:

<div class="row">
<section id="nav_menu-3" class="col-md-3"> [nav menu items go here] </div>  // this is a sidebar widget
<ul class="products columns-3"> <li> [woocomerce products go here]</li></ul> 
</div>
我已经能够使用hook-add_操作“woocommerce_before_shop_loop”和after-shop循环添加第一行

现在我想用另一个类包装该类,因此输出如下:

<div class="row">
<section id="nav_menu-3" class="col-md-3"> [nav menu items go here] </div>  // this is a sidebar widget
<div class="col-md-8"> // start new div
<ul class="products columns-3"> <li> [woocomerce products go here]</li></ul> 
</div> // end new div
</div>
如果我在当前函数中添加此项,它似乎会破坏布局-这是我的店前循环项

function  woocommerce_product_columns_wrapper() {
    $columns =  woocommerce_loop_columns();
    echo '<div class="row">';       
 }

}
add_action( 'woocommerce_before_shop_loop', ' woocommerce_product_columns_wrapper', 40 
);

同样的功能也用于after_shop_循环来关闭div。我如何添加额外的内容来将其全部打包?

在woocomerce go to templates中,将所有文件从那里复制到您的主题文件夹中

然后您会看到包含loop-start.php的循环文件夹 代码式

<ul class="products columns-<?php echo esc_attr( wc_get_loop_prop( 'columns' ) ); ?>">
您可以将此更改为

<div class="col-md-8">
 <ul class="products columns-<?php echo esc_attr( wc_get_loop_prop( 'columns' ) ); ?>">
还有一个loop-end.php

</ul>
将此更改为

</ul></div>

感谢

在WooCommerce商店和档案页面的HTML标记之前添加自定义类:

首先,阅读官方文档,其中解释了如何通过主题覆盖woocommerce模板

关于高级主题的说明: 在一些高级主题上,他们已经可以使用一些定制的WooCommerce模板,因此您将不得不使用它们。如果使用的是子主题,请根据相同的文件夹层次结构将相关模板复制到子主题

一旦理解了这一点,要编辑的相关模板就是loop/loop-start.php。 打开/编辑并替换:

 <div class="col-md-8">
    <ul class="products columns-<?php echo esc_attr( wc_get_loop_prop( 'columns' ) ); ?>">

现在,打开loop-end.php并关闭标记


保存…您完成了。

您可以分享页面的截图或链接吗。我已经能够使用Jquery和$.products.columns-3.wrap;然而,我想知道是否有一种方法可以在phpthank中实现这一点,我一直在寻找比使用jquery更好的方法