[英]WordPress - Can you have Trailing Slashes for Pages but No Slashes for Posts?
一位朋友希望他的 WordPress 網站具有:
默認情況下,WordPress 將為頁面和帖子添加尾部斜杠。 將自定義永久鏈接結構設置為/%postname%.html會將擴展名添加到blog posts ,但當然會從頁面中刪除尾部斜杠。
我可以使用 add_permastruct 重寫產品后類型
function rr_permastruct_html( $post_type, $args ) {
// Works fine!
if ( $post_type === 'product' )
add_permastruct( $post_type, "{$args->rewrite['slug']}/%$post_type%.html", $args->rewrite );
// Worth a shot, but no...
//if ( $post_type === 'page' )
// add_permastruct( $post_type, "{$args->rewrite['slug']}/%$post_type%/", $args->rewrite );
}
但是當涉及到使用 .html 擴展名附加帖子並且仍然有頁面保留斜杠時,我一直在撞牆。
我無法使用 .htaccess 讓它工作,因為它會影響兩者。 一段時間后,我對 $wp_rewrite 的嘗試無處可去:
function rr_rewrite_page_permalink() {
global $wp_rewrite;
if (!strpos($wp_rewrite->get_page_permastruct(), '.html')) {
$wp_rewrite->page_structure = $wp_rewrite->page_structure . '.html';
$wp_rewrite->set_permalink_structure( $wp_rewrite->page_structure );
}
$wp_rewrite->flush_rules();
}
add_action('init', 'rr_rewrite_page_permalink', -1);
永久鏈接插件產生相同的行為而沒有解決方案。 那么,是否有可能發布帶有 .html 擴展名的帖子並讓頁面保留尾部斜杠?
謝謝
文件名不應以斜杠結尾。
如果您在文件名上強制使用尾部斜杠,則會導致瀏覽器認為它是一個文件夾並導致 404 錯誤消息。 你應該在 URL 末尾加一個斜杠嗎?
並且不要忘記
如果您的頁面可以使用或不使用尾部斜杠訪問,則可能會導致重復內容和抓取效率問題。
了解有關特定頁面名稱的永久鏈接的更多信息
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.