我最近开始学习使用 Timber、twig 和 Advanced Custom Fields 使用 Wordpress 构建网页和自定义主题,但我真的不知道如何组织所有内容。到目前为止,我一直在同一个地方修补所有内容(.php 和 .twig 分开),但我真的可以看到这变得一团糟。
1 回答
所以这个问题的答案显然是非常主观的。对于如何最好地组织文件夹、文件和项目/主题没有约定。一个很好的起点是 Timber Starter 主题,它是由制作 Timber 的人制作的。你可以在这里找到:https ://github.com/timber/starter-theme
我还将与您分享我最近使用 Timber 完成的一个项目,并向您展示它是如何组织的。不幸的是,我无法与您共享存储库,因为它是用于工作的,并且存储库是私有的,但是文件和文件夹结构在这里才是真正重要的。
我开始了这个项目,所有的 Timber 项目都以 Timber starter 为主题,所以这就是我的起点。在 Templates 文件夹中,我有以下内容
CPT = 代表自定义帖子类型。每个 CPT 在此文件夹内都有自己的文件夹,我为该特定 CPT 的所有 .twig 文件都放在那里。例如:CPT > Staff > image.twig、biography.twig 等。
components = 此文件包含页眉、页脚、导航、移动导航等内容。这些都是 .twig 文件,用于我网站上的各个页面。
pages = 此文件夹包含每个页面的文件夹。我喜欢将每个页面专门分解为“组件”,并将每个页面特定组件放入其特定于页面的文件夹中。
例如,在这个 pages 文件夹中,我有一个名为“home-page”的文件夹。这包含主页的所有组件。所以我可能有一个 hero.twig、home-page-slider.twig、mission-statement.twig 等。我将主页的每个部分/组件分解并为每个部分创建一个特定的 .twig 文件并将它们放在这个文件夹中.
我对我正在制作的每个自定义页面/模板重复此过程。
就是这样,至少对于这个项目来说。我希望这能让您大致了解如何最好地组织文件。关键是做任何对你有意义的事情,如果你作为一个团队工作,无论你和你的团队成员同意什么。
例如,您可能希望将我称之为“组件”的文件夹重命名为“部分”,因为您可能更熟悉该术语。老实说,只要它对您和该代码库中的任何人有意义,您做什么都无关紧要。请记住,现在有意义的事情,可能在 6 个月到一年后不再有意义。所以也要提前考虑。
我处理所有这些的方法是传达每个文件的角色的最简单方法。我不应该去思考或看自述文件。文件名、文件夹名称和结构应尽可能地自我解释。我喜欢在这些情况下提醒自己 KISS 原则……“保持简单愚蠢!”
https://en.wikipedia.org/wiki/KISS_principle
希望有帮助。