【问题标题】:Change markup in WooCommerce shortcode output更改 WooCommerce 简码输出中的标记
【发布时间】:2016-12-12 17:21:28
【问题描述】:
是否可以使用 WooCommerce 短代码,例如[product_category category="appliances"] 修改标记以在某些元素周围包含 <div> 标记?
我知道我可以通过复制短代码的功能来做到这一点,但这似乎只是为了添加一个包装 <div>。
我可以用 jQuery 做到这一点,但不希望它们的加载有任何延迟。
【问题讨论】:
标签:
php
wordpress
woocommerce
shortcode
product
【解决方案1】:
@更新
是的,这绝对是可能的。您可以通过以下方式实现此目的:
if( !function_exists('prod_cat') ) {
function prod_cat( $atts ) {
extract(shortcode_atts(array(
'cat' => '', // category
'class' => '' // Optional adding class to <div> tag
), $atts));
if ( $class != '') {
$class = ' class="' . $class . '"';
}
return '<div'.$class.'>' . do_shortcode("[product_category category=" . $cat . "]") . '</div>';
}
add_shortcode('prod_cat', 'prod_cat');
}
将上述代码sn-p粘贴到活动子主题或主题的function.php文件中
此代码经过测试且功能齐全。
用法:
shortcode 有 2 个参数:
-
cat="your_category" 设置您的类别
-
class="your_div_class" 将 css 类设置为 <div> 标签 (可选)。
您可以像任何简码一样在任何 woocommerce 页面中使用它:
[prod_cat cat="appliances" class="my_optional_div_class"]
【讨论】:
-
抱歉,这包含了一个整体 围绕整个产品集,我希望在
- 中放置一个包含
的内容,它是每个产品的输出。
-