如何在 wooCommerce 中禁用产品标题超链接

问题描述 投票:0回答:1

我想开发 wooCommerce 自定义插件。对于项目要求产品标题超链接将被禁用。对于这个简单的任务,我定义了以下脚本。请给我解决方案如何解决这个问题。我想使用它 WordPress 自定义插件。

class Custom_WooCommerce_Disable_Title_Link {
    public function __construct() {
        add_action( 'init', array( $this, 'remove_title_hyperlink' ) );
    }

    public function remove_title_hyperlink() {

        remove_action( 'woocommerce_before_shop_loop_item', 'woocommerce_template_loop_product_link_open', 10 );
        remove_action( 'woocommerce_after_shop_loop_item', 'woocommerce_template_loop_product_link_close', 5 );
    }
}

new Custom_WooCommerce_Disable_Title_Link();

我尝试了上面的脚本。这是行不通的

php wordpress woocommerce
1个回答
0
投票

以下代码已在自定义插件中进行了测试(在最新的 WordPress 和 WooCommerce 版本上使用 Storefront 主题进行了测试)

要禁用链接仅适用于产品标题,请使用以下命令:

 class WC_Loop_Product_Title_No_Link {
    public function __construct() {
        add_action( 'init', array( $this, 'remove_hyperlink_from_product_title' ) );
    }

    public function remove_hyperlink_from_product_title() {
        // Close link before product title
        add_action( 'woocommerce_shop_loop_item_title', 'woocommerce_template_loop_product_link_close', 5 );
        // Open link after product title
        add_action( 'woocommerce_shop_loop_item_title', 'woocommerce_template_loop_product_link_open', 20 );
    }
}

new WC_Loop_Product_Title_No_Link();

代码在您的子主题的functions.php文件中工作(或在插件中)。

请注意,它不适用于某些具有自己的相关自定义项的主题。

© www.soinside.com 2019 - 2024. All rights reserved.