如何删除自定义帖子类型slug&基于分类法 - 来自WordPress中的URL

时间:2015-08-07 19:17:12

标签: wordpress woocommerce permalinks

我正在使用woo-commerce

我有以下代码从网址中删除帖子类型“product”slug,它运行正常。

产品网址= http://example.com/product/product-name/

产品网址= http://example.com/product-name/

function df_custom_post_type_link( $post_link, $id = 0 ) {  
$post = get_post($id);  
if ( is_wp_error($post) || 'product' != $post->post_type || empty($post->post_name) )  
        return $post_link;  
    return home_url(user_trailingslashit( "$post->post_name" ));  
}
add_filter( 'post_type_link', 'df_custom_post_type_link' , 10, 2 );

function df_custom_rewrite_rule() {
    add_rewrite_rule('(.*?)$', 'index.php?product=$matches[1]', 'top');
}
add_action('init', 'df_custom_rewrite_rule');

现在如何从url中删除taxonomy-base

示例:

产品类别网址= http://example.com/product-category/product-category-name/到产品类别网址= http://example.com/product-category-name/

1 个答案:

答案 0 :(得分:0)

实际上这是一个非常古老的问题。你的问题很容易回答:WooCommerce本身说这是不可能的。 Quote:"不幸的是,由于WordPress解析其URL的方式,这是不可能的。"

但是我做了一些研究,并且有可能通过插件解决这个问题,或者你自己编写代码可能非常方便。这些插件旨在从WC网址中删除自定义分类和posttype。我不知道是否允许与您分享链接,但这肯定是您的答案。哦,这是一个付费的插件......忘了提。 http://www.perfectseourl.com