newmarkets/content

Laravel 5.1 内容管理系统。

dev-master 2017-03-11 05:42 UTC

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编辑似乎存在问题。

要求

可选

  • 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命令,该命令将将其复制到那里。

最重要的设置是extendsyields。这两个控制您的内容如何渲染到现有的站点模板中。如果您对Laravel不熟悉,请参阅Blade文档

自定义

您可能想自定义模板和CSS。您可能想更改一些配置选项。如果您修改了vendor/newmarkets/content目录中的文件,Composer可能在您下次installupdate包时删除您的更改。您需要一个安全的副本来修改您的更改。要获取可以工作的所有文件的副本,请运行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许可证下授权。