页面以数字开头,WordPress添加2

时间:2018-01-09 作者:Josh Rodgers

首先,我以为我疯了,然后经过额外的故障排除,结果证明我不是!

所以,我想创建一个名为2017的页面,但每次我创建一个以数字开头的页面,WordPress都会在末尾附加“-2”。

我认为这是我的主题或一些图片中已经有了相同名称的东西,所以我尝试了各种奇怪的数字,我肯定没有使用其他地方,WordPress仍然在末尾附加“-2”。

然后我想,好吧,让我们禁用我的主题(启用WordPress默认设置)和插件来隔离问题。。。问题依然存在。

垃圾箱中没有任何内容,没有匹配的帖子或页面名称(甚至连图片都没有)

最后,我想,让我在另一个网站上试试这个-不同的图片,不同的主题,不同的插件,不同的一切。。。问题依然存在。

所以,现在我认为这是一个WordPress的事情。有没有办法解决这个问题?

基本上,要复制并创建一个以数字开头的页面,可以是2005年、1999年或2017年,我唯一注意到的是它必须以数字开头。

我错过什么了吗?

1 个回复
最合适的回答,由SO网友:Andrew 整理而成

wp_unique_post_slug 功能,进行检查以“防止新的post段塞,这可能导致URL与日期存档冲突。”这是第3812行的相关代码wp-includes/post.php

    // Prevent new post slugs that could result in URLs that conflict with date archives.
    $post = get_post( $post_ID );
    $conflicts_with_date_archive = false;
    if ( \'post\' === $post_type && ( ! $post || $post->post_name !== $slug ) && preg_match( \'/^[0-9]+$/\', $slug ) && $slug_num = intval( $slug ) ) {
        $permastructs   = array_values( array_filter( explode( \'/\', get_option( \'permalink_structure\' ) ) ) );
        $postname_index = array_search( \'%postname%\', $permastructs );

        /*
         * Potential date clashes are as follows:
         *
         * - Any integer in the first permastruct position could be a year.
         * - An integer between 1 and 12 that follows \'year\' conflicts with \'monthnum\'.
         * - An integer between 1 and 31 that follows \'monthnum\' conflicts with \'day\'.
         */
        if ( 0 === $postname_index ||
            ( $postname_index && \'%year%\' === $permastructs[ $postname_index - 1 ] && 13 > $slug_num ) ||
            ( $postname_index && \'%monthnum%\' === $permastructs[ $postname_index - 1 ] && 32 > $slug_num )
        ) {
            $conflicts_with_date_archive = true;
        }
    }

结束

相关推荐

Order pages by date

我正在尝试制作一个onepager并将所有页面加载到一个页面中,如果这有意义的话?现在它是按阿尔法贝蒂的头衔订购的。我想按日期订购。这是网站:http://st358373.cmd16c.cmi.hanze.nl/aljen/home/我已经尝试过此方法,但Wordpress不会加载页面:Wrong Sub-Page Order$pages = get_pages(); foreach ($pages as $page_data) { $content = apply_f