versatilecms / front
Requires
- php: >=7.0
- laravel/scout: ^5.0
- spatie/laravel-sitemap: ~5.2.0
- teamtnt/laravel-scout-tntsearch-driver: ^3.1
This package is auto-updated.
Last update: 2024-09-29 04:37:55 UTC
README
此Laravel软件包为Versatile项目添加前端视图、路由和资源。
它包含前端布局的基本结构(例如,页眉、页脚等)和使用Foundation框架的主题资源。
免责声明(pt_BR)
此存储库仍在开发中。包含pvtl/voyager-frontend软件包的部分内容。
先决条件
- PHP >= 7.1.3
- Node & NPM
- Composer
- Laravel要求
安装
1. 安装Laravel + Versatile (将$VARs替换为您的值)
# 1.0 Install Laravel composer create-project --prefer-dist laravel/laravel $DIR_NAME # 1.1 Require Versatile cd $DIR_NAME && composer require versatilecms/core # 1.2 Copy .env.example to .env and update the DB & App URL config cp .env.example .env # 1.3 Generate a Laravel key php artisan key:generate # 1.4 Run the Versatile Installer php artisan versatile:install # 1.5 Create a Versatile Admin User php artisan versatile:admin $YOUR_EMAIL --create
2. 安装Versatile Frontend
# 2.0 Require this Package in your fresh Laravel/Versatile project composer require versatilecms/front # 2.1 Run the Installer composer dump-autoload && php artisan versatile-frontend:install # 2.3 Build the front-end theme assets npm run dev # 2.4 Set the Laravel search driver in your .env echo "SCOUT_DRIVER=tntsearch" >> .env
有任何问题?请参阅下面的故障排除部分。
'Cron已安装'?
这是对您在服务器上设置标准Laravel cron的一个提醒。Versatile Frontend软件包有几个计划任务,因此依赖于cron的运行。
* * * * * php /path-to-your-project/artisan schedule:run >> /dev/null 2>&1
缩略图/图像缩放
此软件包包含自动图像缩放功能。当您在前端blade模板中引用图像时,只需调用类似以下的内容
{{ image_url($pathToImage, $width, $height, $config = ['crop' => false, 'quality' => 100] ) ?: '/default.png' }} <!-- For example (where $blockData->image = 'blocks/3hkkskd8.jpg'): --> <img src="{{ image_url($blockData->image, 300) ?: '/default.png' }}" />
"CDN"您的图像
该函数将输出一个绝对URL,其中主机名将是APP_URL
,但是您可以在.env
文件中添加一个ASSET_URL
变量以使用不同的主机名。
搜索
生成索引
此模块包含一个计划任务以重新生成索引,一旦您为Laravel设置了任务,它将自动运行。如果您需要测试和重新生成搜索索引,可以手动运行命令php artisan versatile-frontend:generate-search-indices
。
配置搜索(使用Laravel Scout)
默认情况下,此模块在您的.env
文件中定义以下变量后,会自动搜索“页面”和“帖子”模型 - 查看Laravel Scout文档
SCOUT_DRIVER=tntsearch
但是,您可以通过将“Searchable”特性附加到它们上来扩展并定义自己的“Searchable”模型,以便在搜索结果中包含。
class Page extends BaseModel { use Searchable; public $asYouType = false; /** * Get the indexed data array for the model. * @return array */ public function toSearchableArray() { $array = $this->toArray(); // customise the searchable array return $array } }
然后您将能够挂钩到搜索配置并将您的“Searchable”模型与配置密钥(最好使用服务提供程序)合并:scout.tntsearch.searchableModels
。
$this->mergeConfigFrom($this->packagePath . 'path/to/config/scout.php', 'scout.tntsearch.searchableModels');
您的配置文件应包含类似于此模块的scout.php配置中的值
<?php return [ '\My\Searchable\Models\Namespace', ];