我当前的解决方案是在子主题之外创建一个目录,其中包括用于自定义的CSS、JS和php文件
这是一个插件,一个包含PHP/JS/CSS的文件夹,在其中一个PHP文件的顶部有一条注释/** Plugin Name: XYZ
在文件的顶部。
<?php
/**
* Plugin Name: XYZ
*/
然后引用子主题中的那些。
This isn\'t needed. 您可以提供挂钩/操作/过滤器,或使用WP提供的现有挂钩和过滤器。直接从themes文件夹外部包含文件是一种不好的做法,应该永远没有必要。从长远来看,它会导致维护问题。
编辑:我现在不知道需要什么样的定制。因此,系统需要非常灵活和开放。
如果你不知道,你就不知道该怎么做,但没关系。在某些时候,您需要更新子主题,添加挂钩总是很好的。父主题也可以这样做。否则这是一个不合理的要求,你不知道你不知道什么。
自定义JS和CSS如果您想在不修改主题的情况下向主题添加额外的javascript文件和样式表,您可以在插件中这样做。只需像往常一样将样式和脚本排队即可。
WordPress看不到父主题或插件或其本身排队的样式之间有任何区别。这些都是加载到memmory中的代码。没有插件脚本或主题样式之类的东西,也没有沙盒,因此没有任何东西阻止您以这种方式添加额外的样式和脚本。
也许如果您想添加内联代码标记,我可以理解,但有一些API可以实现这一点,例如。wp_add_inline_script
. 如果您真的必须直接添加它,那么有如下挂钩wp_head
属于wp_footer
等来完成。
自定义PHP根据定义,插件是自定义PHP。您可以使用插件执行任何自定义PHP。
如果您想用插件中的新模板替换模板,也可以使用正确的过滤器来完成。WooCommerce做到了这一点,许多插件做到了这一点,覆盖了特定的模板或添加了子文件夹。
所以使用插件吧!