wordpress/skeleton

基于Composer的WordPress项目骨架。

0.5.2 2017-05-22 07:40 UTC

README

image

Latest Stable Version Total Downloads

WordPress项目骨架,专注于您自己的源代码,因为其兼容Composer的设计。受markjaquith/WordPress-Skeleton启发。

与WordPress-Skeleton相比的优点

  • 您可以通过composer create-project安装。
  • 您可以通过composer require/install添加插件。
  • 您不需要执行git submodule init/update。(因此安装非常快)
  • 您可以将/wp/设置为DocumentRoot。(换句话说,您可以将"/wp/"从URL中隐藏)
  • 即使在DocumentRoot的子目录中也可以使用。(您可以在不设置虚拟主机的环境下随意使用,适用于本地开发)
  • 默认安装所有语言。

要求

  • PHP 5.3+

安装

$ composer create-project wordpress/skeleton {project-name}
$ cd {project-name}
$ cp local-config-sample.php local-config.php
$ vi local-config.php # tailor to your environment

您可以使用日语或英语环境。

注意:对于Windows

在Windows环境下,可能需要使用管理员用户控制台(如cmd.exe)创建符号链接。

如果您仍然有与符号链接相关的问题,请按以下方式创建项目 🙇

$ composer create-project wordpress/skeleton {project-name} --no-scripts
$ cd {project-name}
$ mklink /D wp\wp-content\my-themes ..\..\wp-content\themes # or create symlink in some way
$ mklink /D wp\wp-content\uploads ..\..\wp-content\uploads # or create symlink in some way
$ rm -rf wp/wp-content/plugins
$ mklink /D wp\wp-content\plugins ..\..\wp-content\plugins # or create symlink in some way
$ cp local-config-sample.php local-config.php
$ vi local-config.php # tailor to your environment

使用方法

WordPress核心将安装在/wp/,因此您网站的根目录将是/wp/。(例如:"http://example.com/project-name/wp/")

如果您想从URL中隐藏/wp/,应将DocumentRoot设置为/path/to/project/wp/

现在您可以在/wp-content/themes/中创建自己的主题,并通过composer安装一些插件到/wp-content/plugins/(如下一章所述)。并且您的git仓库不管理/wp/,因此您可以在/wp-content/themes中只关注您自己的源代码。

通过composer安装插件

使用WordPress Packagist

您可以使用WordPress Packagist通过composer安装插件(或主题),如下所示

{
    "require": {
        "wpackagist-plugin/akismet": "dev-trunk",
        "wpackagist-plugin/captcha": ">=3.9",
        "wpackagist-theme/hueman": "*"
    }
}

从GitHub或zip文件安装插件

您也可以从GitHub存储库、zip文件等安装一些不在WordPress.org上的插件。要这样做,您应该添加带有"type": "wordpress-plugin"的包并按以下方式要求它

{
    "repositories": [
        {
            "type": "package",
            "package": {
                "name": "something-on-github",
                "type": "wordpress-plugin",
                "version": "dev-master",
                "source": {
                    "type": "git",
                    "url": "git@github.com:someone/something.git",
                    "reference": "master"
                }
            }
        },
        {
            "type": "package",
            "package": {
                "name": "something-of-zip",
                "type": "wordpress-plugin",
                "version": "1.0",
                "dist": {
                    "type": "zip",
                    "url": "http://something.com/download/1.0.zip"
                }
            }
        }
    ],
    "require": {
        "something-on-github": "dev-master",
        "something-of-zip": "1.0"
    }
}

备份数据库和上传的文件

/backup/目录仅用于保存(和版本管理)数据库和上传的文件。如果需要,您可以像下面这样在这里保存它们

$ mysqldump -u[user] -p [database] > backup/dump.sql
$ zip -r backup/uploads.zip wp/wp-content/uploads

机制,仅供参考

安装/更新"wordpress"包后,将在/wp/环境中创建一个符号链接,如下所示

  • /wp/wp-content/my-themes -> /wp-content/themes

在WordPress的启动过程中,通过以下过程将/wp/wp-content/my-theme启用为额外的主题目录

  1. 由于在/wp-config.php(和/local-config.php)中进行自定义,因此WPMU_PLUGIN_DIR指向/wp-content/mu-plugins
  2. /wp-content/mu-plugins/add-skeleton-theme-directory.php中,通过register_theme_directory()函数添加主题目录。

只是让您知道,/wp-config.php(和/local-config.php)不需要链接到/wp/,因为它们将在WordPress的正常启动过程中从/wp/wp-load.php加载。

常用的插件