Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/wordpress/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
WordPress-你可以在页面后面加斜杠,但在文章后面不加斜杠吗?_Wordpress_.htaccess_Url_Permalinks - Fatal编程技术网

WordPress-你可以在页面后面加斜杠,但在文章后面不加斜杠吗?

WordPress-你可以在页面后面加斜杠,但在文章后面不加斜杠吗?,wordpress,.htaccess,url,permalinks,Wordpress,.htaccess,Url,Permalinks,朋友希望他的WordPress站点具有: 页面看起来像目录(包含一个尾随斜杠-) 博客文章看起来像文件(.html扩展名,无斜杠-) 和产品看起来像文件(.html扩展名-) 默认情况下,WordPress将为页面和帖子添加尾部斜杠。 将自定义永久链接结构设置为/%postname%.html将向博客文章添加扩展名,但当然会从页面中删除尾部斜杠 我可以用add_permatruct重写产品的post类型 function rr_permastruct_html( $post_type, $a

朋友希望他的WordPress站点具有:

  • 页面看起来像目录(包含一个尾随斜杠-)
  • 博客文章看起来像文件(.html扩展名,无斜杠-)
  • 和产品看起来像文件(.html扩展名-)
默认情况下,WordPress将为页面和帖子添加尾部斜杠。 将自定义永久链接结构设置为/%postname%.html将向博客文章添加扩展名,但当然会从页面中删除尾部斜杠

我可以用add_permatruct重写产品的post类型

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_重写的尝试,在一段时间后,却一无所获:

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);
Permalink插件产生相同的行为,没有解决方案。那么,有没有可能让文章扩展名为.html,并且让页面保留尾部斜杠


谢谢

文件名不应以斜杠结尾

如果在文件名上强制使用尾随斜杠,则会导致浏览器将其视为文件夹,并导致404错误消息。

别忘了

如果可以使用或不使用尾随斜杠访问页面,则可能会导致重复内容和爬网效率问题


了解更多信息

>如果在文件名上强制使用尾随斜杠,则会导致浏览器将其视为文件夹,并导致404错误消息。谢谢你的回复。我已经有一个测试和工作的404问题的解决方案。但本着这个问题的精神,我想知道在WordPress中是否有可能以这种方式进行设置?