Storefront 是WooCommerce的电子商务主题。它是由WooCommerce和WooCommerce website 它显示为WooCommerce的“官方”主题。
好吧,这对我们意味着什么?
这个主题与WooCommerce之间的联系比其他大多数主题都要紧密。当您查看函数的代码时storefront_do_shortcode可以看到,这个函数只是PHP函数的包装器call_user_func。
function storefront_do_shortcode( $tag, array $atts = array(), $content = null ) {
global $shortcode_tags;
if ( ! isset( $shortcode_tags[ $tag ] ) ) {
return false;
}
return call_user_func( $shortcode_tags[ $tag ], $atts, $content, $tag );
}
PHP函数
call_user_func
用于运行时的动态函数调用。此函数的第一个参数定义回调。如果我们扩展函数
storefront_do_shortcode
通过输出
$shortcode_tags[ $tag ]
, 我们可以“查看”该回调参数。
function storefront_do_shortcode( $tag, array $atts = array(), $content = null ) {
global $shortcode_tags;
if ( ! isset( $shortcode_tags[ $tag ] ) ) {
return false;
}
if($tag == \'product_categories\' )
{
var_dump($shortcode_tags[ $tag ]);
die();
}
return call_user_func( $shortcode_tags[ $tag ], $atts, $content, $tag );
}
输出为
WC_Shortcodes::product_categories
.
如果在店面主题的主题文件夹中搜索名为WC_Shortcodes
, 您将发现没有具有此名称的类。
但是如果你在WooCommerce插件文件夹中搜索,你会找到这个类。
班级WC_Shortcodes 是WooCommerce定义其短代码和功能的地方product_categories 创建短代码。
要呈现分类数据,WooCommerce使用content-product_cat.php 样板该模板定义了一系列操作,可能其中一个可以帮助您。