根据FIG标准命名WordPress项目

时间:2014-05-05 作者:Petr Cibulka

我正试图围绕名称空间、自动加载器和FIG标准,以及最重要的是如何尽可能地实现与WordPress的集成。

这是我的文件结构,是在awesome的帮助下创建的roots/bedrock WordPress stack.

|-- /web
|   |-- /app
|   |   |-- /mu-plugins
|   |   |   |-- autoload.php
|   |   |   |-- /cibulka-mu-base                 // abstract classes, traits, ... for features
|   |   |   |-- /cibulka-mu-feature-1            // features as custom post types, theme support, forms, ...
|   |   |   |-- /cibulka-mu-feature-2            // features as custom post types, theme support, forms, ...
|   |   |-- /themes
|   |   |   |-- /cibulka-parent-theme
|   |   |   |   |-- functions.php                // plays with MU plugins, sets default config
|   |   |   |-- /cibulka-child-theme
|   |   |   |   |-- functions.php                // plays with MU plugins, overrides default config
|   |   |-- /plugins
|   |   |   |-- /akismet
|   |   |   |-- /other third party software
|   |-- /wp
|   |   |-- /wp-admin
|   |   |-- /wp-includes
|   |   |-- etc.
如何通过名称空间模拟文件结构,同时尽可能友好地模拟文件结构?同时,“应用程序”的“包”应存储在单独的文件夹中,以便composer.json 文件,并由GIT监控。

我尝试了很多选择,但老实说,我几乎没有被可能的解决方案的数量所压倒,也没有一个是非常理想的。

你能告诉我什么对你的情况有用吗?

编辑:完全按照目录结构编辑可能的路由:web\\app\\muPlugins\\CibulkaMuBase 等。
  • “伪造”供应商目录:cibulka\\MU\\Base, cibulka\\themes\\parentTheme, ...
  • 进一步操纵WP目录结构-选项有限,几乎使其他一切复杂化,兼容性差
  • anything more clever?
  • 1 个回复
    SO网友:Rarst

    你想得太多了。命名空间结构应用于单个包的级别。没有必要或推动将整个站点作为这样的包来对待。

    首先使用自动加载的另一个好处是,它使类在文件系统中的位置在很大程度上无关紧要。

    因此,简单实用的方法是:

    在单个包(插件/主题)级别处理名称空间使用PSR-4 在Composer中支持包内的简单目录结构,无需过多的文件夹级别

    结束

    相关推荐

    自定义POST类型存档-{POST-TYPE}.php不工作

    我的永久链接设置为自定义结构:/blog/%year%/%monthnum%/%day%/%postname%/我有一个自定义的帖子类型,我们称之为“帖子类型”。我还有一个名为archive post type的归档页面。php正在访问域。com/post-type/though默认为存档。php并跳过存档帖子类型。php我的register\\u post\\u类型如下所示: register_post_type( \'ch_post_type\', array(