Lara-S-CMS
*最新版本:2.0.7(Laravel 7.30.4)
什么是“ Lara-S-CMS”?
使用Bootstrap 4 Admin仪表板模板Gentelella作为管理模板,用于内容管理系统(CMS)或管理仪表板的PHP Laravel骨架(CMS)或管理仪表板(内部/不在网站)。
对于作为网站的示例,我们正在使用现代业务免费Bootstrap 4网站模板
Laravel(S)内容管理系统
- 骨骼?
- 简单?
- 样品?
- 标准?
- 聪明
- 复杂的
- 超级?
- 糟透了? ?
- 旋转器?
自2019年9月以来,由@vickzkater(由Kinidi Tech提供支持)开发
特征
- 支持多语言
- 管理员登录
- 我的个人资料
- 办公室/子公司管理
- 分支每个办公室管理
- 规则管理
- 用户组管理
- 用户(管理员)管理
- 访问/特权/用户角色管理
- 简单的系统日志
- 还原已删除的数据
- 自定义404错误页面
- 自定义维护模式
- 产品管理(作为模块样本,包括上传图像功能)
- 支持DataTables Ajax
- 支持recaptcha v2(管理面板和用户面板的可选)
- 可排序的数据列表(在横幅模块中)
- 使用过滤器的可排序数据列表(在分支模块中 – 逐口换器)
- 应用程序配置
- 进出口Excel文件(在产品模块中)
- 删除上传的图像(在产品模块中)
- 使用Tinymce的丰富文本编辑器/Wysiwyg(在产品模块中)
- datepicker(在产品模块中)
- 助手PHP-许多准备帮助您项目的PHP辅助功能
- 支持Gosmsgateway API-发送SMS(在DevController中)
- 支持MailChimp API(在DevController中)
- PageBuilder(文章)
- 助手JS-许多准备帮助您项目的JS助手功能
- 横幅管理
- QR码生成器
- 使用社交媒体登录(Google/Facebook)
- 支持后端模式(型号或API)
- 支持上传文件(pdf/txt/docs/etc)
-
支持会话驱动程序数据库(请检查部分
Session Driver Database) - 安全更新:如果已更改密码,则迫使用户重新使用
- 所有会话的功能注销
- 示例功能发送电子邮件和电子邮件模板(支持HTML和纯文本)
- 生成缩略图(在保存缩略图的文章模块中)
- 支持一种方式SMS网关API-发送SMS(在DevController中)
- 使用Instagram添加支持登录 – 要使用它阅读Instagram的官方指南
- 设置开放图配置(基于OGP.ME,Twitter Dev Docs和FB Dev Docs)
- Guzzle-Client Helper功能(请在Controller.php上检查)
管理面板
网站
版本
| 拉拉维尔 | Lara-S-CMS |
|---|---|
| 5.8.x | 1.0; 1.1.0 |
| 6.x | 1.0.1; 1.1.1 |
| 7.x | 1.2.x; 2.x |
要求
- PHP> = 7.3
- Laravel 7.x要求
安装LARA-S-CMS
Lara-S-CMS利用作曲家来管理其依赖性。因此,在使用Lara-S-CMS之前,请确保您的机器上安装了作曲家。
作曲家创建项目
您也可以通过在终端中发出COMPOSER create-project命令来安装Lara-S-CMS:
composer create-project vickzkater/lara-s-cms --prefer-dist website
设置
创建项目后,移动到项目根文件夹,例如: cd website并运行命令以设置数据库和配置文件(如果安装时未生成键)。
php artisan key:generate
应用程序密钥
安装LARA-S-CMS后,您应该执行的下一件事将您的应用程序键设置为随机字符串。如果您通过Composer或Lara-S-CMS安装程序安装了Lara-S-CMS,则该密钥已通过key:generate命令为您设置。通常,此字符串应为32个字符。可以在.env环境文件中设置密钥。如果您尚未将.env.example文件重命名为.env,则现在应该这样做。如果未设置应用程序密钥,则您的用户会话和其他加密数据将不安全!
接下来, .env文件中的设置环境配置
-
设置应用程序名称的
APP_NAME -
设置
DISPLAY_SESSIONin Admin -pooter中的启用/禁用显示会话(开发目的) -
设置
APP_MODE用于设置应用程序模式(登台/LIVE) -
设置应用程序版本的
APP_VERSION -
设置
APP_BACKEND选择应用程序后端模式(模型或API),如果使用API,请确保APP_URL_API不是空的 -
设置
ADMIN_CMSin enable/disable Admin面板 -
设置
ADMIN_DIR用于设置应用程序或管理员系统目录名称(或仅使用管理仪表板,将其留为空白) -
设置
APP_URL_SITEfor serap application URL,用于使用社交媒体登录 -
设置
APP_URL_APIfor设置API URL,如果此项目使用后端模式API(APP_BACKEND= API) -
将
API_USER设置为SET API AUTH凭据(可选) -
设置
API_PASS的设置API Auth凭据(可选) -
SET
APP_TIMEZONE用于设置时区应用程序,示例:UTC(GMT)或ASIA/JAKARTA(GMT+7)或ASIA/KUALA_LUMPUR(GMT+8) -
设置
APP_MAINTENANCE_UNTIL用于使用格式(y,m -1,d)的设置截止日期维护应用程序 -
在应用程序中设置启用/禁用多语言模块的
MULTILANG_MODULE -
设置应用程序中设置默认语言的
DEFAULT_LANGUAGE -
META_DESCRIPTIONset set meta描述 -
set
META_AUTHORfor set meta作者 -
设置
APP_FAVICON_TYPE设置Favicon类型(ICO/png/etc) -
基于文件映像(带有图像路径的输入)设置应用程序favicon的设置
APP_FAVICON,示例:favicon文件在public/images目录路径中,然后设置\’images/images/favicon.ico\’ -
设置
APP_LOGO,用于基于字体的设置应用程序徽标的设置Avesome(无需\’fa-\’只是图标名称,示例:star/laptop/bank) -
基于文件映像(带有图像路径的输入)设置应用程序徽标的设置
APP_LOGO_IMAGE,示例:徽标图像在“ public/public/images”目录路径中,然后设置“ image/logo.png” -
POWERED为显示开发人员名称 -
设置为显示开发人员URL的
POWERED_URL -
设置
MAIL_MODULE用于启用/禁用邮件模块 -
设置
MAIL_FROM_NAME设置发送者电子邮件的名称 -
设置
MAIL_FROM_ADDRESS设置发送者电子邮件的地址 -
设置
MAIL_REPLYTO_NAME,以设置回复到电子邮件的名称 -
将
MAIL_REPLYTO_ADDRESS设置为设置回复到电子邮件的地址 -
设置
MAIL_CONTACT_NAME,用于设置联系电子邮件的名称(用于接收电子邮件从“联系我们”页面接收) -
设置
MAIL_CONTACT_ADDRESS,以供设置联系电子邮件的地址(用于接收电子邮件从“联系我们”页面接收) -
设置
RECAPTCHA_SITE_KEYfor设置Google Recaptcha -
设置
RECAPTCHA_SECRET_KEYfor设置Google Recaptcha -
将
RECAPTCHA_SITE_KEY_ADMIN设置为set google recaptcha在管理仪表板中 -
将
RECAPTCHA_SECRET_KEY_ADMIN设置为set google recaptcha in admin仪表板 -
将
AUTH_WITH_PROVIDER设置为启用/禁用社交媒体/提供商 -
设置
GOOGLE_CLIENT_MODULEin enable/disable Google API身份验证 -
将
GOOGLE_CLIENT_ID设置为Google API身份验证 -
将
GOOGLE_CLIENT_SECRET设置为Google API身份验证 -
设置
GOOGLE_CALLBACK_URL设置Google API身份验证回调URL -
设置
FACEBOOK_CLIENT_MODULEin enable/disable facebook api身份验证 -
将
FACEBOOK_CLIENT_ID设置为设置Facebook API身份验证 -
将
FACEBOOK_CLIENT_SECRET设置为设置Facebook API身份验证 -
设置
FACEBOOK_CALLBACK_URL设置Facebook API身份验证回调URL -
设置
INSTAGRAM_CLIENT_MODULEfor enable/disable instagram api身份验证 -
设置
INSTAGRAM_CLIENT_IDfor设置Instagram API身份验证 -
设置
INSTAGRAM_CLIENT_SECRET用于设置Instagram API身份验证 -
设置
INSTAGRAM_CALLBACK_URL设置Instagram API身份验证回调URL -
设置
FCM_SERVER_KEY用于设置firebase推送通知 -
将
FCM_SENDER_ID设置为设置firebase推送通知 -
设置启用/禁用SMS模块的
SMS_MODULE -
设置
GOSMS_AUTH_USER设置gosmsgateway凭据 -
设置
GOSMS_AUTH_PASS设置gosmsgateway凭据 -
set
ONEWAYSMS_APIfor set ynowewaysms网关api url -
set
ONEWAYSMS_AUTH_USER用于set OnewaysMS网关凭据 -
set
ONEWAYSMS_AUTH_PASSfor设置OnewaySMS网关凭据 -
设置
MC_KEYfor SET MAILCHIMP API密钥 -
设置
MC_LIST_IDfor Set MailChimp列表ID -
设置
MC_TAG_DEFAULT的设置mailChimp标签ID为默认值
数据库设置
您必须运行数据库迁移以运行此应用程序。
确保在.env文件中正确设置DB_DATABASE ,然后运行迁移以创建结构数据库和某些系统数据
php artisan migrate
迁移完成后,运行命令php artisan serve或浏览链接以查看Admin登录页面(基于.env的添加/ADMIN_DIR应用程序URL)。
http://pa*th-to**-project-folder/public/manager
登录详细信息(默认)
行政人员
Username: superuser
Password: sudo123!
配置
基本配置
目录许可
安装Lara-S-CMS后,您可能需要配置一些权限。 Web服务器中应在storage和引导/缓存目录中的目录和bootstrap/cache目录。如果您使用的是宅基化虚拟机,则应已经设置这些权限。
并另外配置了目录public/uploads/的权限。因此,在产品模块中上传照片功能可以很好地工作。
chmod o+w -R public/uploads/
*如果设置所有配置后,但仍显示错误“ 500内部服务器错误”
评论.htaccess以解决此问题的第一行
#Header always set Content-Security-Policy: upgrade-insecure-requests
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^(.*)$ public/$1 [L]
</IfModule>
*)此问题仅发生在某些托管服务器上,例如AWS(Amazon Web服务)
*供你参考
-
app\\Libraries\\CustomFunction.php在Web的负载中自动调用,因为它已在composer.json中设置 -
app\\Libraries\\in controller/view by line代码在app \\ libraries \\中的Helper.phpuse App\\Libraries\\Helper;致电一些助手功能
重要说明!
请将APP_DEBUG设置为false生产,以禁用Laravel Debugbar。
会话驱动程序数据库
使用database会话驱动程序时,您将需要创建一个表以包含会话项目。以下是表的示例Schema声明:
Schema::create(\'sessions\', function ($table) {
$table->string(\'id\')->unique();
$table->foreignId(\'user_id\')->nullable();
$table->string(\'ip_address\', 45)->nullable();
$table->text(\'user_agent\')->nullable();
$table->text(\'payload\');
$table->integer(\'last_activity\');
});
您可以使用session:table工匠命令生成此迁移:
php artisan session:table
php artisan migrate
然后,您需要对Illuminate\\Session\\DatabaseSessionHandler.php进行一些更改
...
protected function addUserInformation(&$payload)
{
if ($this->container->bound(Guard::class)) {
$payload[\'user_id\'] = $this->userId();
}
// ADDED FOR LARA-S-CMS BY KINIDI TECH - BEGIN
if(\\Session::has(\'admin\')){
$larascms_user = \\Session::get(\'admin\');
$payload[\'user_id\'] = $larascms_user->id;
}
// ADDED FOR LARA-S-CMS BY KINIDI TECH - END
return $this;
}
...
维护模式
当您的应用程序处于维护模式时,将向您的应用程序显示所有请求的自定义视图。这使得在更新或执行维护时“禁用”应用程序时易于“禁用”。用于应用程序的默认中间件堆栈中包含维护模式检查。如果该应用程序处于维护模式,则将以503的状态代码抛出HTTPException。
要启用维护模式,只需执行down Artisan命令:
php artisan down
要禁用维护模式,请使用up命令:
php artisan up
即使在维护模式下,也可以允许特定的IP地址或网络使用命令访问该应用程序
php artisan down --allow=127.0.0.1 --allow=192.168.0.0/16
资料来源:Laravel文档
维护模式响应模板
维护模式响应的默认模板位于resources/views/errors/503.blade.php和public/maintenance/
使用的软件包(Laravel之外)
- yajra/laravel-datables-Oracle-用于在表中显示数据列表
- Maatwebsite/Excel-用于导出和导入Excel数据
- guzzlehttp/guzzle-用于发送http请求并琐碎以与Web服务集成
- NZTIM/MailChimp-曾经用于MailChimp API
- SimpleSoftwareio/simple -qrcode-用于生成QR代码
- Laravel/Socialite-用于与社交媒体登录
- 干预/图像 – 用于生成缩略图图像
- Laravel Debugbar-习惯于开发
使用的库
- 助手PHP-许多准备帮助您项目的PHP辅助功能
- 助手JS-许多准备帮助您项目的JS助手功能
- Gosmsgateway API- Laravel库(GOSMS)
- MailChimp API助手 – Laravel库(MailChimphelper)
- PageBuilder(使用内容元素构建页面)
- SMS Gateway API -Laravel库(OnewaysMS)的一种方式
Lara-S-CMS已在
- PHP Weekly -phpweekly.com
贡献
感谢您考虑为Lara-S-CMS做出贡献。
错误,改进和安全漏洞
如果您发现Lara-S-CMS中的错误或安全漏洞,请通过vicky@kiniditech.com将电子邮件发送给Vicky Budiman。所有请求将立即解决。
问题
如果遇到任何问题/错误,请在此处报告。
执照
Lara-S-CMS是由Kinidi Tech和贡献者构建的开源软件,并获得了MIT许可证的许可。
学分
- Vicky Budiman(https://g*ithu*b.co*m/vickzkater)
- Laravel(https://gi*thub.c**om/laravel/laravel)
- colorlibhq(https://g*i*thu*b.com/colorlibhq/gentelella)
- 启动Bootstrap(https://s*tart*bo*otstrap.com/)
带给你
Kinidi Tech
