【问题标题】:Move Woocommerce Single Products Title移动 Woocommerce 单品标题
【发布时间】:2016-01-18 00:42:28
【问题描述】:

我试图将 Woocommerce 单个产品页面上的 产品标题 移动到不同的位置。接受的位置就在itemscope itemtype="http://schema.org/Product" 下方,我试图首先从当前位置删除标题remove_action('woocommerce_single_product_summary', 'woocommerce_template_single_title', 50);,但没有从当前位置删除标题。

另一个问题是我无法将产品标题添加到我使用过do_action( 'woocommerce_moved_product_title_position' ); 然后add_action('woocommerce_moved_product_title_position', 'woocommerce_template_single_title', 60); 的新位置

我正在使用 Woocommerce 2.4.13 和 WordPress 4.4.1

请帮我解决这个问题。这对我来说会很棒。

【问题讨论】:

    标签: php wordpress woocommerce


    【解决方案1】:

    奇怪的是,您必须从函数内部调用 remove_action

    function so_34845641_move_title(){
        remove_action('woocommerce_single_product_summary', 'woocommerce_template_single_title', 50); 
        add_action('woocommerce_moved_product_title_position', 'woocommerce_template_single_title', 60);
    }
    add_action( 'woocommerce_before_single_product', 'so_34845641_move_title' );
    

    只是建议可能有足够的钩子,而无需在模板中添加自定义do_action()

    【讨论】:

    • 谢谢@helgatheviking
    • @helgatheviking 这对我很有用,谢谢!如何在标题之外添加自定义包装 div(例如:
      ..
      )?也许通过修改 woocommerce/single-product/title.php 模板本身?再次感谢您的精彩回答!
    • 尝试在另外 2 个 add_action() 语句中添加您的标记。 1 之前和 1 之后(修改优先级编号以在触发时进行调整...一个低优先级,一个高优先级)。
    【解决方案2】:

    在函数内运行 remove_action 不会改变任何东西,但会改变我的工作优先级。

    我举个例子:

    remove_action( 'woocommerce_single_product_summary', 'woocommerce_template_single_excerpt', 20);
    remove_action( 'woocommerce_single_product_summary', 'woocommerce_template_single_add_to_cart', 30);
    add_action( 'woocommerce_single_product_summary', 'woocommerce_template_single_excerpt', 15 );
    add_action( 'woocommerce_single_product_summary', 'woocommerce_template_single_add_to_cart', 10 );
    

    注意并尝试不同的优先级。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-12-06
      • 1970-01-01
      • 2019-09-16
      • 2021-07-18
      • 2017-12-06
      • 1970-01-01
      • 2022-11-16
      • 1970-01-01
      相关资源
      最近更新 更多