sy/bootstrap-cms

添加CMS功能的插件

安装: 304

依赖项: 0

建议者: 0

安全: 0

星标: 0

关注者: 1

分支: 0

开放问题: 6

语言:JavaScript


README

sy/bootstrap插件,用于在基于sy/project的应用程序中添加“CMS”功能。

安装

从您的sy/project应用程序目录中,运行此命令

composer install-plugin cms

它等同于

composer require sy/bootstrap-cms

注意

安装插件命令将执行以下所有步骤

  1. 运行composer require
  2. 复制模板文件
  3. 创建flyway迁移文件
  4. 复制资源文件
  5. 运行composer build
  6. 运行composer db migrate

页面方法

在您的Project\Application\Page类中创建一个方法(在protected/src/Application/Page.php中)

	/**
	 * Content page
	 */
	public function contentAction() {
		$this->setContentVars([
			'CONTENT' => new \Sy\Bootstrap\Component\Cms\Content($this->get('id', 1)),
		]);
	}

可选地,用内容页面覆盖主页

	/**
	 * Home page
	 */
	public function homeAction() {
		$this->copy('content');
	}

在Application.php中添加URL转换器

protected/src/Application.php

<?php
namespace Project;

use Sy\Bootstrap\Lib\Url;

class Application extends \Sy\Bootstrap\Application {

	protected function initUrlConverter() {
		Url\AliasManager::setAliasFile(__DIR__ . '/../conf/alias.php');
		Url::addConverter(new Url\AliasConverter());
		Url::addConverter(new Url\ContentConverter()); // Add the content URL converter
		Url::addConverter(new Url\ControllerActionConverter());
	}

}

在Sitemap.php中添加内容页面网站地图

protected/src/Application/Sitemap.php

<?php
namespace Project\Application;

class Sitemap extends \Sy\Bootstrap\Application\Sitemap {

	public function __construct() {
		parent::__construct();
		$this->addProvider(new \Sy\Bootstrap\Application\Sitemap\Page());
		$this->addProvider(new \Sy\Bootstrap\Application\Sitemap\Content()); // Add the content sitemap
	}

}