amintado / yii2-module-wordpress
为 Yii2 框架提供的 WordPress CMS
Requires
- php: >=5.6.0
This package is not auto-updated.
Last update: 2021-09-04 10:44:33 UTC
README
此模块是针对 yii2 定制的 WordPress 模块
已安装 WordPress
安装
$ composer require amintado/yii2-module-wordpress "*"
或将此行添加到 composer.json 文件中
"amintado/yii2-module-wordpress":"*"
配置
添加
'cms'=>[
'class'=> amintado\wordpress\Module::className(),
]
到前端/config/main.php 文件中,在 modules 数组下,例如
'modules' => [
'cms'=>[
'class'=> amintado\wordpress\Module::className(),
]
]
在根项目目录下创建一个名为 status.php
的 php 文件,并在其中添加以下行:
defined('YII_DEBUG') or define('YII_DEBUG', true);
defined('YII_ENV') or define('YII_ENV', 'dev');
defined('WP_USE_THEMES') or define('WP_USE_THEMES', true);
现在从您的 Yii2 应用程序索引文件中删除这些行以避免冲突
defined('YII_DEBUG') or define('YII_DEBUG', true);
defined('YII_ENV') or define('YII_ENV', 'dev');
并在您的 app index.php 文件中 require(status.php)
现在安装 WordPress
打开此链接: http://yourhost.com/frontend/index.php/cms
然后模块将在您的根项目目录中创建一个名为 'cms' 的文件夹,并将 WordPress 安装在那里。
如果默认使用 mysql,WordPress 表将在您的数据库中自动创建。
安装后,系统将重定向网页到已安装的 WordPress 目录。
参数
安装 wp 后,您可以使用此配置登录 wp
管理员用户名:wpadmin
管理员密码: 123456789
更改参数
您还可以在安装 WordPress 到您的项目之前更改默认参数,只需在 config/main.php 文件中的 config 数组中配置这些参数即可
'modules' => [
'cms'=>[
'class'=> amintado\wordpress\Module::className(),
'WeblogTitle'=>'amintado Yii2 WordPress Module',
'WeblogUsername'=>'wpadmin',
'WeblogEmail'=>'amintado@gmail.com',
'WeblogPassword'=>'123456789',
'WeblogPublic'=>1
]
]
注意
在调试模式下禁用 WordPress 管理员选项和菜单,例如,如果 YII_DEBUG=true,则所有 WordPress 管理员菜单和工具栏都将禁用。
此设置可以在主题文件夹中的 function.php
文件中设置或清除。
如果您有解决方案,请告诉我您的解决方案。
许可
此模块受 GPL3 许可证保护
改进
如果您想在 YII2 框架上真正与 WP 合作,此模块是首先创建的,然后帮助改进它 :)
针对波斯程序员
此 WordPress 包含已翻译和 RTL wp layers slider 插件,您可以在您的项目中使用它
在 Yii2 中使用 WP 函数
如果您想在 yii 中使用 WP 函数,例如在 Yii2 项目中加载文章或幻灯片,您必须在您的项目中 require wp-load.php 文件。
注意
绝不要在 index.php 文件中使用 wp-load.php。仅在需要的控制器或动作中使用它。
如果您需要在 index.php 文件或项目的任何特定部分中包含 wp-load.php 文件,您的登录、注销和网站上的每个表单中的 CSRF 验证将与 WordPress 冲突,并且您发布的数据将经过过滤并变为空。
在已安装的 WordPress 中使用 YII2 函数
wp-load.php 文件包含 Yii2 启动 php 文件。
您可以在这里看到添加的代码
require (__DIR__.'/../status.php');
if (strpos(parse_url($_SERVER ["REQUEST_URI"])['path'],'cms',0)){
require(__DIR__ . '/../vendor/autoload.php');
require(__DIR__ . '/../vendor/yiisoft/yii2/Yii.php');
require(__DIR__ . '/../common/config/bootstrap.php');
require(__DIR__ . '/../backend/config/bootstrap.php');
//require(__DIR__ . '/../cms/wp-load.php');
$config = yii\helpers\ArrayHelper::merge(
require(__DIR__ . '/../common/config/main.php'),
require(__DIR__ . '/../common/config/main-local.php'),
require(__DIR__ . '/../backend/config/main.php'),
require(__DIR__ . '/../backend/config/main-local.php')
);
(new yii\web\Application($config));
}
WordPress 版本
该模块使用的基于 WordPress 的版本
版本:4.8.1,带有波斯语完整翻译包