php - 将分类术语添加到 WooCommerce 产品永久链接
问题描述
我想将自定义分类的 slug 添加到 WooCommerce 产品的永久链接中。为此,我添加了一个名为品牌的分类法。现在我想将品牌的 slug 添加到产品 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%-
但它总是添加/
到最后。
解决方案
推荐阅读
- git - 每次构建时,Visual Studio(或 GIT)总是将 DLL 显示为修改后的文件
- c - 将 CS50 的 Resize(不太舒服)调整为 Resize(更舒服)?
- node.js - 我可以采取哪些问题确定步骤来诊断 node.js 中的 webpack 连接问题?
- swift - SwiftUI 中可覆盖的 ButtonStyle
- git - 为什么有些 git 命令只有一个 - 用于附加选项,而其他一些命令有 -
- json - 如何将 Julia 字典键从字符串转换为整数
- python - 简单的python Webserver socket编程
- php - 登录时尝试允许访问页面时无法传输会话 ID
- express - VueJS 方法返回承诺。如何在模板中显示数据
- php - 无法在我的本地 Xampp 服务器上使用 php 访问 smarty