• Время чтения ~1 мин
  • 24.08.2022

Aloia CMS – это система управления контентом с плоскими файлами для Laravel. Вам не нужно перестраивать все приложение, чтобы предложить возможности CMS, и вы можете включить Aloia в существующее приложение.

Aloia предлагает следующие типы контента: стандартные файлы, которыми можно управлять как с плоскими файлами в Markdown или HTML.

  • Page
  • Article
  • ContentBlock
  • MetaTag

Давайте возьмем тип контента Article в качестве примера и продемонстрируем, как вы взаимодействуете с этими моделями плоских файлов:

use AloiaCms\Models\Article;
use Illuminate\Support\Collection;
 
// Get a collection of Article[]|Collection
$articles = Article::all();
 
// Find an article
$article = Article::find('this-post-is-amazing');

И более сложный пример обновления статьи, который затем обновите плоский файл в выбранном формате:

use Carbon\Carbon;
 
Article::find('this-post-is-amazing')
    // md is the default, but you can use html as well.
    ->setExtension('md')
    ->setMatter([
        'description' => 'This post is about beautiful things',
        'is_published' => true,
        'is_sechduled' => false,
        // Either use post_date in setMatter() or setPostDate()
        'post_date' => date('Y-m-d')
    ])
    ->setPostDate(Carbon::now())
    ->setBody('# This is the content of an article')
    ->save();

ContentBlock — еще один интересный тип контента, поскольку он позволяет создавать частичные блоки контента и отображать их в файле блейда.Например, для следующего блока контента в Markdown:

## Title of the content
 
This is a paragraph

Блок контента можно отредактировать, а затем отобразить в файле Blade:

{!! Block::get('test') !!}

Что будет отображать следующий вывод:

<h2>Title of the content</h2>
 
<p>This is a paragraph</p>

Вы также можете создавать [настраиваемые типы контента Создание типов контента и взаимодействие с ними, как и с любыми другими встроенными типами контента.

Узнать больше

Ознакомьтесь с документацией Aloia CMS, чтобы установить этот пакет и изучить как это использовать. Вы можете узнать больше об этом пакете, получить полные инструкции по установке и просмотреть исходный код на GitHub.

Comments

No comments yet
Yurij Finiv

Yurij Finiv

Full stack

Про мене

Professional Fullstack Developer with extensive experience in website and desktop application development. Proficient in a wide range of tools and technologies, including Bootstrap, Tailwind, HTML5, CSS3, PUG, JavaScript, Alpine.js, jQuery, PHP, MODX, and Node.js. Skilled in website development using Symfony, MODX, and Laravel. Experience: Contributed to the development and translation of MODX3 i...

Об авторе CrazyBoy49z
WORK EXPERIENCE
Контакты
Ukraine, Lutsk
+380979856297