我正在开发一个主题,使用NHP Theme Options Framework 添加一些主题选项。自然地,主题选项框架在数据库中创建一行来存储主题的选项。
如果我创建父对象的子主题,它将与父对象共享相同的主题选项,这将引出我的问题:
子主题应该与父主题共享同一主题选项行,还是应该有自己的选项行?有没有一个原因可以解释为什么一个比另一个更好?
如果它们是共享的,并且您在这两个主题之间切换,那么您的选项将保持不变。如果这是预期的行为,那就太好了。另一方面,您可能会尽可能地自定义子主题,认为它是独立的,然后切换回父主题,并发现您的更改被覆盖。我很难选择一个而不是另一个。你的想法是什么?
最合适的回答,由SO网友:Tom J Nowell 整理而成
也不
主题选项应存储为主题mod,使用get_theme_mod
和set_theme_mod
.
在内部,这些映射到选项,但这是存储特定于主题的选项的官方方式,这样当您更改主题时,不会发生冲突,并且您的设置会保留下来,以备您再次更改时使用。这是一句经典的格言:“别人帮我解决了这个问题,现在是他们的问题。”
但如果你坚持使用选项,我建议你在所有选项前加上主题名,不要在孩子和家长之间共享选项。当移回父主题时,设置子主题选项不应影响网站。
但在某些情况下,这可能是有利的,所以要做出正确的判断(又名使用set/get_theme_mod
)
你可以find more about this API here