使用One插件(工具包)创建主题

时间:2014-08-16 作者:Stephen

我会尽我最大的努力解释我想要实现的目标。我已经有一段时间没有使用Wordpress进行开发了,我遇到了一些麻烦。

我正在寻找制作高级Wordpress主题的机会。每个主题将由自定义帖子类型组成(例如公文包、幻灯片、事件)。我正在尝试创建一个插件来保存这些自定义帖子类型,并且只包含主题使用的自定义帖子类型。

E、 一个主题只能使用公文包自定义帖子类型。到目前为止,我通过将其添加到主题函数中来实现这一点。php文件。

add_theme_support( \'custom_portfolio\' )
然后,在插件中,我使用:

require_if_theme_supports( \'custom_portfolio\', PLUGINROOT . \'/inc/post-types/portfolio.php\' );
我试图让这些主题不会“锁定”用户。如果他们要更改主题,自定义帖子类型仍然可见,因此他们可以访问数据,即使他们可能无法相应地工作。显然,自定义帖子类型将无法加载,因为主题不支持“自定义公文包”。

我怎样才能做到这一点?

谢谢

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

让您的插件创建一个管理页面,用户可以在其中激活不同的自定义帖子类型。

突出显示当前主题支持的帖子类型,并解释其确切含义。

可能是这样的:

    Post type         Support by Your Cool Theme Name
[x] Portfolio         Template, search, custom editor fields
[x] Event             Not supported
[ ] Project           Template, search, can be set as front page

SO网友:sakibmoon

如果您在插件中定义了CPT,那么定制帖子类型不会因为主题不支持“定制公文包”而无法加载。

总是有single.php 如果找不到其他模板,将使用该模板。您可以从插件中提供至少最低限度的css支持,这样即使内容切换主题,内容也可以理解。

如果自定义帖子类型不存在特定模板,您还可以从插件中提供模板。它不会一直与新主题匹配,但至少可以访问。

如果用户使用您的主题,将使用您主题中的模板,您可以从中提供尽可能最好的外观。

我认为这是你能做的最好的,以防止用户被“锁定”。

SO网友:Mark Kaplun

-总体思路1

将主题分为两部分并将其中一部分称为“插件”并不能解决主题锁定问题。只要只有一个主题可以访问CPT内容,即使理论上其他主题可以访问它,也会被锁定。

插件中一个好的CPT应该是自包含的,可以跨所有主题工作,而不需要主题执行任何特殊操作来调用功能。bbpress和woocommerce可能就是两个很好的例子。

只要你需要add_theme_support( \'custom_portfolio\' ) 要正确使用插件,有一个锁定,您最好省去麻烦,并将CPT作为主题的一部分。

结束