Mic*_*umo 28 wordpress wordpress-theming wordpress-plugin e-commerce woocommerce
我是WooCommerce的新手.无论如何,我想创建自己的主题,所以我遵循指南并将核心模板文件复制到/ mywordpresstheme/woocommerce /.
一切都很好,我正在编辑模板就好了.
然而,在WooCommerce中钩子和动作的工作方式令我感到困惑,我无法确定生成的HTML的某些部分来自何处.
例如,在content-product.php,有一个获取图像的钩子:
<?php
/*
* woocommerce_before_shop_loop_item_title hook
*
* @hooked woocommerce_show_product_loop_sale_flash - 10
* @hooked woocommerce_template_loop_product_thumbnail - 10
*/
do_action( 'woocommerce_before_shop_loop_item_title' );
?>
Run Code Online (Sandbox Code Playgroud)
但这是什么?它从何而来??在动作名称中是否有任何线索可以找到为编辑它而生成的HTML的位置?
我已经阅读了关于WooCommerce的"钩子和过滤器"的文章,但它没有解释在何种情况下或如何根据案例更改这些内容.
任何帮助将不胜感激.
我是这个系统的新手,我确信我只是在看一些非常明显的东西.
谢谢,Mikey.
hel*_*ing 54
但这是什么?它从何而来??在动作名称中是否有任何线索可以找到为编辑它而生成的HTML的位置?
这是一个action hook.它不是单独做任何事情,而是在注释中列出的函数hook,因此在触发此函数时运行.它在评论中说,函数woocommerce_template_loop_product_thumbnail是负责获取缩略图的函数.你可以在Woocommerce插件中找到这个功能.我使用Sublime Text编辑器(虽然我认为其他人也会这样做)在整个文件夹中搜索该短语,它会告诉我它究竟是什么文件.在这种情况下,它就是所谓的可插入函数,位于woocommerce-template.php.(它现在在版本2.1+中称为wc-template-hooks.php)
可插入函数意味着您在主题的functions.php中定义了具有相同名称的函数的新版本
function woocommerce_template_loop_product_thumbnail(){
echo "apple";
}
Run Code Online (Sandbox Code Playgroud)
如果你把上面的内容放在你的functions.php中,那么woocommerce_template_loop_product_thumbnail()你只需看到苹果这个词而不是Woo .
我已经阅读了关于WooCommerce的"钩子和过滤器"的文章,但它没有解释在何种情况下或如何根据案例更改这些内容.
您将对主题的functions.php进行所有更改,并且不需要根据具体情况进行更改.所有挂钩和过滤器的行为都相同.也就是说,它们不是最容易学习的东西,所以要耐心等待自己.我发现过滤器特别难以绕过我的脑袋.
在一个无偿的自我推销的地方,我写了一系列文章关于WordPress钩子和过滤器的基础知识(一篇文章说它是专题钩子,但钩子是钩子!),这是我希望人们告诉的所有事情我在WordPress职业生涯的开始.
| 归档时间: |
|
| 查看次数: |
30702 次 |
| 最近记录: |