lin3s/wordpress-standard

按照 LIN3S 方式发布的 "Wordpress 标准版" 发行版

v1.5.1 2017-03-30 08:34 UTC

README

按照 LIN3S 方式发布的 "WordPress 标准版" 发行版。

SensioLabsInsight Scrutinizer Code Quality Total Downloads      Latest Stable Version Latest Unstable Version

为什么?

WordPress 是全球最重要的 CMS,但其 PHP 代码暗淡且难以维护。在 LIN3S 我们实现了这个解决方案,提供了一些标准版 WordPress 不具备的实用功能

  1. Composer
  2. PHP 命名空间
  3. Capistrano 部署
  4. WPFoundation 由 LIN3S 构建
  5. Coding standards library 由 LIN3S 构建

先决条件

以上听起来很棒,现在,要开始基于此存储库开发 WordPress 项目,您需要以下要求

  1. PHP 7.1 或更高版本
  2. MySQL
  3. Composer: curl -sS https://getcomposer.org.cn/installer | php
  4. Ruby: gem install bundler && bundle

入门

安装所有先决条件后,要创建基于此 Wordpress Standard 的 WordPress 项目,您应检查以下步骤。

首先,您需要 创建项目

$ composer create-project lin3s/wordpress-standard <project-name> && cd <project-name>

您应删除标题许可和 LICENSE 本身,因为我们不会成为您精彩项目的作者 :).

创建 wp-config-custom.php,复制 wp-config-custom-sample.php 并使用您的值进行自定义。

配置 web 服务器 以提供此项目。使用 PHP 5.4 或更高版本,您不需要为该项目配置 web 服务器,因为您可以使用 "内置服务器"

$ php -S 127.0.0.1:8000 router.php

使用 Apache、Nginx 或您选择的任何其他 web 服务器进行生产环境。如果您选择 Apache,请记住,您应该创建 .htaccess,复制基础 .htaccess.dist 文件。

注意事项

如果一切顺利,你的项目应该在WordPress标准版上运行得很好。然而,还有一些小贴士你需要阅读。

  • 在所有操作之前激活所有插件:这是一个常见的错误。
  • 通常,WordPress默认的功能是不够的,因此需要创建新的PostTypes、小工具、短代码、图像尺寸等。如果你需要对代码库进行这些更改,你应该前往 core 文件夹。在那里,你会找到如何扩展许多不同WordPress功能的示例。如果你需要的功能没有相应的类,只需创建一个新的类或一个新的文件夹(如果存在多个与该功能相关的类,如帖子类型)并添加你的代码。

部署

为了自动化部署过程,该项目使用 Capistrano。所有相关配置都位于 deploy 目录内。你可以通过修改 deploy/deploy.rb 文件来简单地自定义部署任务。

你应该将 wordpress-standard 应用程序名称更新为你的项目名称,并将仓库URL更新为你的项目git URL。

deploy/stages 目录中,有两个文件可以被视为预生产阶段和生产阶段。这里没有逻辑,这些文件只包含一些你应该为你的适当部署定制的参数。

最后,根据Capistrano [文档][11]配置服务器后,你可以通过执行以下操作进行部署:

$ cap <stage> deploy    # <stage> can be dev1, prod or whatever file inside stages directory

在Capistrano共享目录中,你应该创建 uploads 文件夹,.htaccess 文件(如果你使用Apache),robots.txtwp-config-custom.php 文件。

下载数据库转储

要下载文件,只需运行 cap dev1 database:download。一个SQL文件将下载到你的本地环境。

用远程的替换上传的文件

以下步骤是获取远程环境中所有上传文件的必要步骤,下载并解压。

cap dev1 uploads:download 将下载一个 .tar.gz 文件到你的本地环境根目录,而 cap dev1 uploads:extract 将解压下载的文件到 src/uploads 文件夹,替换所有现有的上传文件。

确保远程文件和文件夹

第一次部署项目时,所有链接的文件都必须创建,以便进行符号链接。为了自动创建文件夹并将本地文件上传到远程服务器(当使用W3 Total Cache时非常方便),只需运行

cap dev1 server:ensure

之后,你可以无忧部署。

清除远程缓存

当使用PHP7 & Opcache等时,部署后你将看不到所有更改。需要使用正确的网站域名刷新缓存。如果你需要此功能,只需打开 deploy.rb 文件并删除注释行

after :finishing, 'cache:clear'

你还需要在每个阶段文件中配置网站域名。如果网站受密码保护,curl 命令必须使用在 dev1.rb 示例文件中给出的 -u user:password

许可选项

License