0

我已經創建了自定義帖子類型post_event_type並且在註冊時已將rewrite設置爲true。WordPress自定義帖子類型更改爲固定鏈接顯示404

在這個崗位類型,有EVENT_CATEGORY與改寫的分類設置爲在類別真正

然後將URL解析這個帖子的網址/ post_event_type/postname

有三種類別下分類標準event_Category如電影院,舞蹈,音樂。

我想要的網址解析到的頁面作爲此類網址/舞蹈/ postname所以「舞」將是分類類別和文章名稱將駐留在此類別

下後如果我改變了註冊公告鍵入重寫爲「事件」,他們將全部解析爲URL/events/postname

然後我嘗試了下面的代碼嘗試將它們分離出來。這些網址以我想要的方式工作,然而他們然後轉到404頁面。

add_filter('rewrite_rules_array', 'mmp_rewrite_rules'); 

function mmp_rewrite_rules($rules) { 
$newRules = array(); 
$newRules['events/(.+)/(.+)/(.+)/(.+)/?$'] = 'index.php?vc_guide_creator=$matches[4]'; 
$newRules['events/(.+)/?$']    = 'index.php?event_Category=$matches[1]'; 

return array_merge($newRules, $rules); 
} 

global $wp_rewrite; 
$structure = '/%events%/'; 
$wp_rewrite->add_rewrite_tag("%events%", '([^/]+)', "post_event_type="); 
$wp_rewrite->add_permastruct('post_event_type', $structure, false); 

function filter_post_type_link($link, $post) 
{ 
if ($post->post_type != 'post_event_type') 
    return $link; 

if ($cats = get_the_terms($post->ID, 'event_Category')){ 
    $link = str_replace('post_event_type', array_pop($cats)->slug, $link); 

} 
return $link; 
} 
add_filter('post_type_link', 'filter_post_type_link', 10, 2); 

任何人都可以幫忙嗎?

+0

任何人都可以幫助這個嗎? – Techballs

回答

1

您是否嘗試過更新您的固定鏈接。

進入設置 - >固定鏈接,點擊底部的保存更改按鈕而不更改任何設置,這將只更新永久鏈接表。

相關問題