bugfix> php > 投稿

カスタム分類のスラッグをWooCommerce製品のパーマリンクに追加したい。これを行うために、ブランドと呼ばれる分類法を追加しました。次に、ブランドのスラッグを製品のURLに追加します。

前: www.shop.com/product/product-name/

後: www.shop.com/product/brand-product-name/

私はいくつかの研究を行って、そのようなもののために次のチュートリアルを見つけました:https://wisdmlabs.com/blog/add-taxonomy-term-custom-post-permalinks-wordpress/

しかし、私は自分でカスタム投稿タイプ「WooCommerce procuct」を追加しないので、ここから書き換えコードを追加する方法がわかりません。

'rewrite' => array('slug' => 'projects/%projectscategory%', 'with_front' => false),

編集:カスタムコードは次のとおりです。

add_filter('post_type_link', 'productbrand_permalink_structure', 10, 4);
function productbrand_permalink_structure($post_link, $post, $leavename, $sample) {
    if (false !== strpos($post_link, '%brand%')) {
        $productbrand_type_term = get_the_terms($post->ID, 'brand');
        if (!empty($productbrand_type_term))
            $post_link = str_replace('%brand%', array_pop($productbrand_type_term)->
            slug, $post_link);
        else
            $post_link = str_replace('%brand%', 'uncategorized', $post_link);
    }
    return $post_link;
}

問題は、URLが次のようになることです。

www.shop.com/product/brand-/product-name/

/ を削除する方法はありますか brand- の後

permalikオプション内のカスタムベースに、次を追加しました。

/product/%brand%-

しかし、それは常に / を追加します最後まで。