我应该创建自定义页面类型吗?

时间:2019-04-25 作者:Victor Ofoegbu

我正在创建我的第一个Wordpress主题,并学习了自定义帖子类型。出于不同的原因,它们听起来很棒,我真的很想实施它们。但我在某处读到,当主题的用户更改为不支持该帖子类型的另一个主题时,他们实际上将失去查看所有自定义帖子的能力。

我不希望这种情况发生,所以我正在考虑其他方法,比如

告诉用户创建类别并循环以从类别中获取帖子创建自定义分类法

2 个回复
SO网友:Alexander Holsgrove

您已经强调了在主题中而不是在插件中创建自定义帖子类型的问题。如果用户更改为新主题,则不能依赖您创建的主题中的任何功能。

Themes 可以添加功能,但通常应关注站点的演示文稿

Plugins 将添加功能

因此,我建议您在此处添加register_post_type 密码这个Registering Custom Post Types documentation 也推荐这种方法,因此请仔细阅读以了解更多详细信息。

SO网友:rudtek

你所听到的是正确的。如果您已经开发了自定义帖子类型的专用视图(存档页面、单个页面、类别或为帖子类型设置自定义查询),并且用户更改了主题,则所有这些视图都将丢失。

正如前面所提到的,定制的帖子类型应该在插件中创建,但cpt的表示是在主题中创建的。

真正的问题是,一旦你投入时间和精力来创建网站的外观和感觉,为什么你会让用户改变主题?您已经创建了一个设计:坚持下去。事实是,如果你改变主题,不仅仅是自定义的后期演示文稿会丢失。你的博客也会呈现出来。您的颜色、字体和布局都已消失,并恢复到新的主题设置。

现在,当主题更改时,您的页面、帖子和cpt仍将显示(因为您在插件中创建了cpt),但它们将以新主题设计师创建的方式呈现。由于该设计师没有考虑您的cpt,wordpress只会将您的帖子视为默认的博客帖子。

想想看,如果你给了用户改变主题的能力,那么他们可能也会改变你的插件。

TLDR: Choose a theme and stick with it(don\'t change it unless there is a good reason). Create your CPT. Do it in a plugin.

相关推荐