Этот пакет обеспечивает способ интегрировать виноград в ваш Laravel Proejct.
composer require jd-dotlogics/laravel-grapesjs
php artisan vendor:publish --tag="laravel-grapesjs"
php artisan migrate
Добавьте столбец «GJS_DATA» в таблицу базы данных модели (например, страница), для которой вы собираетесь использовать редактор.
Реализуйте редактируемый интерфейс и используйте признак редактирования для класса модели
use Illuminate Database Eloquent Model ;
use Dotlogics Grapesjs App Traits EditableTrait ;
use Dotlogics Grapesjs App Contracts Editable ;
class Page extends Model implements Editable
{
use EditableTrait;
. . .
}Route:: get ( ' pages/{page}/editor ' , ' PageController@editor ' ); <?php
namespace App Http Controllers ;
use App Models Page ;
use Illuminate Http Request ;
use Dotlogics Grapesjs App Traits EditorTrait ;
class PageController extends Controller
{
use EditorTrait;
. . .
public function editor (Request $ request , Page $ page )
{
return $ this -> show_gjs_editor ( $ request , $ page );
}
. . .
}
Заполнители похожи на короткий код в WordPress. Синакс заполнителя
[[This-Is-Placeholder]]
Создайте файл с именем «this-is-placeholder.blade.php» в «/ресурсах/представлениях/поставщике/Ларавел-грапиру»/«Заполнители».
The Placeholder будет заменен содержанием относительного файла лезвия "this-is-placeholder.blade.php"
Вы можете создавать глобальные шаблоны (или блоки) в каталоге «/ресурсы/представления/поставщика/laravel-grapesjs/шаблоны». И шаблоны/блоки будут доступны в разделе блоков редактора. Вы также можете создавать специфические шаблоны/блоки модели, определив GetTemplatesPath/GetGJSblockSpath в модели
public function getTemplatesPath (){ return ' pages_templates ' ; }Это будет искать шаблоны в рамках каталога "Laravel-grapesj :: pages_templates".
Вы также можете вернуть NULL из этих методов, чтобы скрыть шаблоны/блоки для любой модели.
Модель «редактируемой» (например, страница) будет иметь два общественных свойства, CSS и HTML. В вашем файле Blade вы можете использовать эти свойства для отображения контента.
< style type = " text/css " >
{!! $page -> css ! !}
</ style >
{!! $page -> html ! !}
Спасибо за использование.