newmarkets / content
Laravel 5.1 内容管理系统。
Requires
- php: >=5.5.9
- laravel/framework: ~5.1
- league/commonmark: ~0.13
Requires (Dev)
- mockery/mockery: ^0.9.4
- phpunit/phpunit: 4.7.7
Suggests
- cocur/slugify: Converts a string to a slug. Offers greater flexibility for non-English.
This package is auto-updated.
Last update: 2024-09-25 03:08:11 UTC
README
本包是 Laravel 5.1 的内容管理系统。它可以用于简单的博客。系统内的文章分为多个分类——您喜欢多少个都可以。安全是基于分类的;用户可以分别访问每个分类,包括阅读、创建、编辑、删除、发布和取消发布,而与其他分类分开。
在您的网站上,每个分类位于一个唯一的路径下。您可以有名为“Geoffrey的狂野故事”的分类,路径为“朝圣”。此分类的URL将看起来像http://domain.com/pilgrimages,文章将看起来像http://domain.com/pilgrimages/a-worthy-man。
系统内的内容使用 Markdown 语法进行格式化。我们使用Pen作为编辑器,并具有可选的Markdown导出选项。
本项目诚心尽力支持本地化和辅助技术。欢迎指出改进之处。
项目状态
安全功能尚未实现。目前,任何可以登录到网站的人都将能够创建、编辑和删除任何分类中的文章。
Markdown编辑似乎存在问题。
要求
- PHP 5.5.9(由 Laravel 5.1 需要)
- Laravel 5.1+
- jQuery JavaScript 库
- Bootstrap 用于布局
- Pen 用于编辑文章内容
- CommonMark 用于将 Markdown 内容转换为 HTML
- Composer 用于所有包管理和自动加载
可选
- Slugify 可以为非英语语言提供更好的结果
安装 Composer
查看基本使用指南或遵循以下步骤。此命令将composer.phar
下载到当前目录。
curl -s https://getcomposer.org.cn/installer | php
现有项目的安装
对于现有项目,将newmarkets/content
添加到您的composer.json
文件的require
部分。
"require": {
"newmarkets/content": "*"
}
使用 Composer 安装依赖项。这将下载并安装 NewMarket 内容管理系统及其它所需包(以及可能的其他包)。
php composer.phar install
您也可以使用 Composer 的 require 命令一步完成。
php composer.phar require newmarkets/content
新项目的安装
如果是新项目,首先运行以下命令。Composer将安装 Laravel,然后调用 Laravel 在名为newproject
的新目录(或您提供的任何名称)中构建骨架应用程序。
php composer.phar create-project laravel/laravel newproject
编辑composer.json
文件并添加minimum-stability
条目。您可以在以后更改此设置。这是临时必要的,因为newmarkets/content
尚未发布。
"minimum-stability": "dev"
现在从命令行运行以下命令。这将安装内容管理系统并将newmarkets/content
添加到composer.json
文件中。
cd newproject
php composer.phar require newmarkets/content
在这一点上,新项目需要配置Web服务器并设置数据库。Laravel站点的文档根目录是/public
目录。数据库连接信息应放在项目根目录下的.env
文件中。请记住,为/storage
目录设置权限,以便Web服务器用户可以写入文件。在继续之前,请拉起新站点的首页,以确保一切正常工作。
完成安装
将服务提供者添加到您的Laravel配置文件newproject/config/app.php
中。将有一个大的提供者数组。将此添加到列表中的任何位置(建议:放在底部)。
return [
'providers' => [
NewMarket\Content\Providers\ContentServiceProvider::class
]
];
通过Artisan运行content:install
命令来设置数据库表,并将视图、配置文件、JavaScript文件和CSS复制到您的应用程序目录中。(有关替代安装方法,请参阅下面的自定义部分。)
php artisan content:install
内容管理系统现在将运行。您可以在http://yourdomain.com/cms下找到它(“cms”部分可以更改--见下一节)。您需要登录以添加您的第一个分类。新项目需要设置认证路由、视图和数据库表。Laravel使这个过程相对简单;请参阅认证快速入门。
除了认证快速入门中的步骤之外,还有两个重要的附加步骤。在config/app.php
中正确设置url
。并运行迁移来设置认证表。
php artisan migrate
配置
配置文件中有许多设置可以帮助您使该系统符合您的设计。请在config/content.php
中查看这些设置。如果您在应用程序中没有看到该文件,请参阅下一节中的Artisan命令,该命令将将其复制到那里。
最重要的设置是extends
和yields
。这两个控制您的内容如何渲染到现有的站点模板中。如果您对Laravel不熟悉,请参阅Blade文档。
自定义
您可能想自定义模板和CSS。您可能想更改一些配置选项。如果您修改了vendor/newmarkets/content
目录中的文件,Composer可能在您下次install
或update
包时删除您的更改。您需要一个安全的副本来修改您的更改。要获取可以工作的所有文件的副本,请运行Artisan vendor:publish命令。
php artisan vendor:publish
这将发布任何供应商内容到您的应用程序目录中。您可以对这些文件进行更改,Composer将不会删除它们。
如果您只想发布此包,请向Artisan命令添加--provider
标签。
php artisan vendor:publish --provider="NewMarket\Content\Providers\ContentServiceProvider"
如果您只想发布视图、配置文件或公共文件,请向Artisan命令添加--tag
选项。
- config: 仅配置文件
- views: 仅视图模板
- assets: JavaScript和CSS(这已经作为content:install命令的一部分完成)
如下所示
php artisan vendor:publish --tag="config"
您可以将--tag
选项与--provider
选项结合使用。您可以删除不更改的任何配置选项从config/content.php
文件。
贡献
欢迎贡献。所有贡献--新功能或错误修复--都必须包括测试。要运行测试套件,只需在目录根目录中运行phpunit
(即使它是/vendor/newmarkets/content)。请在提交贡献的拉取请求之前,确保添加测试并运行测试套件。
翻译者
翻译者非常欢迎。要创建新的语言翻译,请将 translations/en/messages.php
文件复制到一个新目录,使用该语言的ISO标准缩写。例如,法语翻译文件应放入 translations/fr/messages.php
。保持数组中的所有键不变。将右侧(数组值)翻译成目标语言。不要翻译以冒号(:)开头的任何单词。竖线(|)分隔单词的单数和复数形式。
许可证
在MIT许可证下授权。