我想编辑我的单一产品页面的模板。
我尝试使用WC钩子的woocommerce_single_product_summary在我的子functions.php添加自定义字段就在标题之下,但不幸的是,钩子的行为奇怪,如下所述。
我试图添加这一行代码:
add_action('woocommerce_single_product_summary', 'display_speaker_name', 6);
function display_speaker_name() {
echo '<p>' . get_field('speaker_name') . '</p>';
}但是它所做的是,它在标题上方的摘要部分的顶部显示自定义字段。当我试图将优先级更改为11时,它将显示在该部分的底部,在类别下面。我查看了WC文档,woocommerce_template_single_title钩子的优先级应该是5。所以如果我正确理解,我的定制钩子的适当优先级应该在6-9之间,如果我想在标题下面显示它,对吗?
我甚至查看了wc_template_hooks.php,并在那里正确设置了默认WC挂钩的优先级。此外,我试图删除原来的WC标题挂钩,然后添加它的优先级5,但不幸的是,它也没有工作。
你有什么想法,怎么解决这个问题?我使用的是OceanWP主题。谢谢!
编辑:参见关于解决方案的第一个答案的评论.
发布于 2020-04-16 09:42:22
发自/模板/内容-单产品. From
<div class="summary entry-summary">
<?php
/**
* Hook: woocommerce_single_product_summary.
*
* @hooked woocommerce_template_single_title - 5
* @hooked woocommerce_template_single_rating - 10
* @hooked woocommerce_template_single_price - 10
* @hooked woocommerce_template_single_excerpt - 20
* @hooked woocommerce_template_single_add_to_cart - 30
* @hooked woocommerce_template_single_meta - 40
* @hooked woocommerce_template_single_sharing - 50
* @hooked WC_Structured_Data::generate_product_data() - 60
*/
do_action( 'woocommerce_single_product_summary' );
?>
</div>因此,要想完成整个任务,你必须使用高于60的优先级。
add_action('woocommerce_single_product_summary', 'display_speaker_name', 70);
https://stackoverflow.com/questions/61246185
复制相似问题