归档模板不适用于自定义帖子类型

时间:2019-09-04 作者:user2924019

我正在注册一个名为“产品和服务”的自定义帖子类型。我已在中创建了一个文件wp-content/themes/theme/ 调用archive-products&services.php 但它没有使用此文件。

我也试过了archive-products & services.php, archive-productsandservices.php 但它仍然无法加载模板。

register_post_type( \'Products & Services\',
    array(
        \'supports\' => array(\'title\', \'editor\', \'thumbnail\'),
        \'labels\' => array(
            \'name\' => __( \'Products and Services\' ),
            \'singular_name\' => __( \'Service\' )
        ),
        \'public\' => true,
        \'has_archive\' => true,
        \'rewrite\' => array(\'slug\' => \'productsandservices\')

    )
);
它在另外两种称为“新闻”和“产品”的自定义帖子类型上运行良好。这是帖子类型中存在空格的问题吗?

3 个回复
SO网友:Matthew Brown aka Lord Matt

您的问题是;WordPress无法支持原样。这是因为&;用作URL的一部分,以将查询变量连接在一起。像这样:

example.com/file.php?foo=bar&baz=zoo
此外,正如注释中所指出的,文件名必须遵循命名标准。在文件中有明确规定。

格式为archive-[slug].php

这就是为什么当您重命名文件时,它开始工作的原因。

SO网友:user2924019

将post类型更改为“Products and Services”后,它将使用文件名“archive productsandservices.php”。我想Wordpress不支持帖子类型中的特殊字符。

SO网友:Lee

Wordpress不支持帖子类型中的特殊字符。

然而,有必要指出,食品法典委员会并没有说明这一点。上面说的是(max 20 characters, cannot container capital letters, underscores or spaces)

https://codex.wordpress.org/Function_Reference/register_post_type

相关推荐