sim*_*nvk 0 wordpress woocommerce
我正在寻找一种将 Woocommerce 产品 ID 放入 URL 的方法,例如:
domain.com/product-category/id/product-title
Run Code Online (Sandbox Code Playgroud)
ID 是产品的帖子 ID,例如“12092”。由WooCommercein自动创建Wordpress。
这可以以某种方式完成吗?可以轻松地通过Wordpress永久链接设置或以不同的方式通过侵入我的方式进入文件。
这几乎有效:
<?php
add_filter('post_type_link', 'wpse33551_post_type_link', 1, 3);
function wpse33551_post_type_link( $link, $post = 0 ){
if ( $post->post_type == 'product' ){
return home_url( 'p/' . $post->ID );
} else {
return $link;
}
}
add_action( 'init', 'wpse33551_rewrites_init' );
function wpse33551_rewrites_init(){
add_rewrite_rule(
'product/([0-9]+)?$',
'index.php?post_type=product&p=$matches[1]',
'top' );
}
?>
Run Code Online (Sandbox Code Playgroud)
但输出是:
domain.com/p/45
Run Code Online (Sandbox Code Playgroud)
我希望它是:
domain.com/p/45/title-of-the-post
Run Code Online (Sandbox Code Playgroud)
谢谢!
小智 7
为什么这么复杂?转到设置 -> 永久链接,然后单击“基于商店的 URL”并保存。现在您可以在“自定义结构”中看到永久链接结构。它现在应该是这样的:
/shop/%product_cat%/
Run Code Online (Sandbox Code Playgroud)
现在将 post_id 添加到永久链接设置中,如下所示:
/shop/%product_cat%/%post_id%/
Run Code Online (Sandbox Code Playgroud)
保存并继续。
| 归档时间: |
|
| 查看次数: |
8798 次 |
| 最近记录: |