如何将WooCommerce_breadcrumb钩子中的WooCommerce产品标题添加到unction.php

时间:2022-02-04 作者:Dragan Petrovic FSD

我是WooCommerce主题的新手,一直在使用分类显示页面。以下是我的代码:

/**
 * Change several of the breadcrumb defaults
 */
add_filter(\'woocommerce_breadcrumb_defaults\', \'jk_woocommerce_breadcrumbs\');
function jk_woocommerce_breadcrumbs()
{
    if (is_product_category()) {
        global $wp_query;

        // get the query object
        $cat = $wp_query->get_queried_object();

        // get the thumbnail id using the queried category term_id
        $thumbnail_id = get_term_meta($cat->term_id, \'banner\', true);

        // get the image URL
        $image = wp_get_attachment_url($thumbnail_id);

        // print the IMG HTML
        echo "";
        return array(
            \'delimiter\'   => \' / \',
            \'wrap_before\' => \'<div class="c-main-banner c-main-banner--inner no-overlay w-100" style="background-image: url(\' . $image . \'"><div class="container"><ol>\',
            \'wrap_after\'  => \'</ol></div></div>\',
            \'before\'      => \'<li>\',
            \'after\'       => \'</li>\',
            \'home\'        => _x(\'Home\', \'breadcrumb\', \'woocommerce\'),
        );
    }
}


但我需要这样展示:

<div class="c-main-banner c-main-banner--inner no-overlay w-100" style="background-image: url( category banner image as background );">
    <div class="container">
        <ol class="c-breadcrumb">
                <li><a href="breadcrumb slug"> breadcrumb-name </a></li>
        </ol>
        <div class="c-banner-content d-flex align-items-start justify-content-end flex-wrap flex-column">
            <big> woocommerce-products-header-title </big>
        </div>
    </div>
</div>

1 个回复
SO网友:tiago calado

如果woocommerce是一个插件,并且不在本次聊天的范围内,那么这个问题仍然可以接受答案,我感到非常遗憾。无论如何,据我所知,您希望在woocommerce面包屑上显示产品标题,woocommerce面包屑默认情况下已经这样做了,不需要任何更改,只需删除您的代码即可。enter image description here

woocommerce_breadcrumb();
如果你真的想在函数中添加产品标题,你可以这样称呼它

global $product;
echo $product->name;
但是,这只适用于产品页面、商店页面等,因此不会显示产品名称,或者只显示第一个产品名称。

相关推荐

Conditional action hooks

我正在开发一个使用AJAX的插件,但我在控制代码流方面遇到了困难。我想在运行条件后挂接函数。我的钩子在控制结构内部添加时不会启动,但在外部会启动。我还有一个触发AJAX请求的事件,这只能在用户点击触发事件后,在加载所有DOM之后发生。AJAX请求告诉PHP函数设置cookie。它设置了cookie,但在阅读关于cookie的PHP文档时,我发现它们只能在发送任何输出后设置,但我还是做到了这一点?我读过WordPress初始化序列,但这并没有帮助我解决这个问题。这是我的密码:add_action(\'wp_