我遇到了Wordpress網站的子頁面上的單頁面應用程序的重定向規則問題。我很直接地遵循了這套說明,並且仍然存在問題:https://wordpress.stackexchange.com/questions/193479/redirect-sub-pages-to-parent-without-changing-url將WordPress網址重定向到父頁面而沒有更改網址
子頁面是業務地點的自定義發佈類型。當有人訪問http://business.com/hollywood-ca/contact
時,它應該拉起http://business.com/hollywood-ca/
,但url需要保持不變(URL的聯繫人部分是每個位置頁面上的單頁Vue.js應用程序的一部分,因此需要堅持)。這裏是我的代碼:
//This function hooks in on post save
function add_location_deep_links($post_id, $post, $update) {
$post_type = get_post_type($post_id);
if ("location" != $post_type) return; // If this isn't a 'location' post, don't update it.
$slug = $post->post_name; //hollywood-ca
add_rewrite_rule(
"^{$slug}/[A-Za-z]", //regex prevents trying to redirect the /hollywood-ca/ page
"index.php?page_id={$post_id}", //redirect to post
'top' // take precedence over other redirects
);
flush_rewrite_rules();
}
問題是,當我訪問http://business.com/hollywood-ca/contact
頁面重定向到http://business.com/hollywood-ca/
防止我的單頁應用從導航到聯繫人選項卡。
如果有幫助,我還寫了一些功能,將我的網址從business.com/location/hollywood-ca
更改爲清潔程序business.com/hollywood-ca
。我已經測試了這些沒有這些功能的問題,並且仍然存在問題,所以我不認爲它們是相關的。