问题描述
我很困惑,Googling 没有找到任何答案。我的主题文件如 single.php
或 header.php
驻留在一个文件夹中。我应该在文件夹名称中使用虚线或下划线吗?我的网络服务器在 Linux /Apache 上运行,我不知道文件夹名称的后果如何。所以我应该喜欢这样的东西
my_wordpress_theme_folder
过度
my-wordpress-theme-folder
还是同样有效?
最佳解决方案
The WordPress PHP Coding Standards Handbook 规定文件名应全部为小写字母和 hyphen-separated 。 As Squish 指出,WordPress Template Hierarchy 中的各种例程依赖于这种惯例,以便在某些情况下使用 auto-load 模板。
所有这一切说,你不会通过使用下划线而不是连字符来破坏 Linux 或 Apache(尽管你将打破模板层次结构中的传统加载文件) 。目录似乎没有任何 well-defined 约定,但作为一种经验,避免了所有名字中的空格。点可能或可能不会在目录名称中产生不期望的影响,特别是* NIX 惯例传统上是 handle directories beginning with a dot as “hidden.”
由于 WP_Theme 类的 scandir()
函数直接使用了 scandir()
,后面跟着 is_dir()
,以便枚举一个目录中的各个主题,而不是测试条目的命名约定,因此它不是文件系统命名的内容本身将文件标记为目录。您可以在 is_dir()
页面上阅读有关某些特定注意事项的意见。无论如何,确保您的目录名称可以在 URL-format 中运行,并且可以由 web-browser 导航。
与 WordPress 一起使用的主题使用所有小写字母的目录命名约定,没有标点符号,即 twentytwelve
,twentythirteen
等。
简单地回答你的问题,是的 – my_wordpress_theme_folder
以及 my-wordpress-theme-folder
都是可接受的 theme-directory 命名方案。 MyWordPressThemeFolder
也将同样运行,mywordpressthemefolder
(这似乎是 WordPress 开发人员的一些未说明的标准) 。
次佳解决方案
对于目录来说,这是个人偏好 (你也可以使用空格,也不是真的推荐) 。
WordPress 约会似乎是破折号。
特别是因为 WordPress 确实为特殊文件使用破折号。
例如,当您制作页面模板时,您可以创建一个名为”page-special” 的文件,模板将自动加载页面名称”special” 。 (例如 website.com/special)
参考文献
注:本文内容整合自 Google/Baidu/Bing 辅助翻译的英文资料结果。如果您对结果不满意,可以加入我们改善翻译效果:薇晓朵技术论坛。