我使用Woocommerce设置在初始商店页面上显示类别缩略图,然后在其中显示产品及其缩略图。
我想有一个初始的类别页面,以显示每行3个缩略图和产品页面显示每行5个类别。
要在每行显示5个我使用过的产品:
add_filter('loop_shop_columns', 'loop_columns');
if (!function_exists('loop_columns')) {
function loop_columns() {
return 5;
}
}这会更改类别页面和商店页面上每行的缩略图。
谁知道我如何才能改变类别页面,以3个缩略图每行,并维护5个产品每行商店页面?
发布于 2016-08-13 22:37:06
使用WooCommerce conditionals tags,将帮助您实现这一点。我已经更改了你的代码:
add_filter('loop_shop_columns', 'loop_columns');
if (!function_exists('loop_columns')) {
function loop_columns() {
if ( is_product_category() ) {
return 3;
} else { // for other archive pages and shop page
return 5;
}
}
}此代码位于活动子主题或主题的function.php文件中
建议:有时需要改变一些css规则,以获得正确的每行显示。
WooCommerce conditionals标签用法:
要以商店页面归档为目标:
if ( is_shop() ){ //按行返回项数}
要针对产品标签归档文件,请执行以下操作:
if ( is_product_tag() ){ //按行返回项数}
要针对除产品类别外的所有产品档案 archives (在开头添加! ),请执行以下操作:
if ( !is_product_category() ){ //按行返回项数}
您还可以定义和某些特定的类别或标签(请参阅文档)。
参考文献:
发布于 2018-11-27 08:25:26
在我的店面-孩子主题中。被接受的答案对我不起作用。我必须将woocommerce/templates/loop/loop-star.php复制到我的子主题子文件夹/woocommerce/loop/,并像这样修改它:
if ( ! defined( 'ABSPATH' ) ) {
exit;
}
// FMP20181126 - Categories are SubCategories set # of columns.
$display_type = woocommerce_get_loop_display_mode();
if ( 'subcategories' === $display_type || 'both' === $display_type ) {
wc_set_loop_prop( 'columns', 3 );
}
?>
<ul class="products columns-<?php echo esc_attr( wc_get_loop_prop( 'columns' ) ); ?>">https://stackoverflow.com/questions/38932094
复制相似问题