我正在注册一个名为“产品和服务”的自定义帖子类型。我已在中创建了一个文件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\')
)
);
它在另外两种称为“新闻”和“产品”的自定义帖子类型上运行良好。这是帖子类型中存在空格的问题吗?
SO网友:Matthew Brown aka Lord Matt
您的问题是;WordPress无法支持原样。这是因为&;用作URL的一部分,以将查询变量连接在一起。像这样:
example.com/file.php?foo=bar&baz=zoo
此外,正如注释中所指出的,文件名必须遵循命名标准。在文件中有明确规定。
格式为archive-[slug].php
这就是为什么当您重命名文件时,它开始工作的原因。