Просмотр поста

.
Delphinum
Плагины
Система никак не ограничивает возможности языка. Чтобы это показать, давайте реализуем возможности блога с единственным автором на базе синтаксиса Markdown. В первую очередь подключим механизм рендеринга этого языка. Я рекомендую для загрузки внешних зависимостей использовать Composer. Создайте файл composer.json в корне проекта:

{
  "name": "MyProject",
  "type": "project",
  "require": {
    "michelf/php-markdown": "*"
  }
}


Выполните команду в консоли (если у вас установлен composer):

composer install


После создайте ваш плагин _plugins/mk.php:

<?php
function markdown($content){
  return Michelf\Markdown::defaultTransform($content);
}


Структура проекта (+/-)
/
  _layout/
    default.html
  _plugins/
    mk.php
  vendor/
  css/
    style.css
  about/
    index.php
  sp.php
  config.php
  index.php


Теперь необходимо подключить плагин к проекту. Для этого измените config.php:

<?php
return [
  'plugins' => [
    'vendor/autoload.php', // Для загрузки зависимостей
    '_plugins/mk.php',       // Для загрузки плагина
  ],
  'layout' => '_layout/default.html',
  'title' => 'Мой сайт',
];


Плагин подключен, теперь можно использовать его на всех страницах проекта, но мы изменим с его помощью только страницу "О проекте", для этого отредактируем about/index.php:

<?php
$sp = ['render' => 'markdown', 'title' => 'О проекте'];
include('../sp.php');
?>
# О проекте

Мой очень хороший проект