dietervyncke/dry-blog

There is no license information available for the latest version (1.2.0) of this package.

Dry Blog

1.2.0 2020-07-09 13:37 UTC

This package is auto-updated.

Last update: 2020-08-09 13:45:47 UTC


README

Blog package for dry including migrations, backend managers, i18n support, categories, blocks, photos and authors.

Index

Installation

composer require dietervyncke/dry-blog

php oak migration migrate -m blog
Config options
Name Default
categories true
authors true
photos true
advanced-layout true
types ['text-photo', 'photo-text', 'text', 'text-frame', 'quote', 'quote-text', 'text-quote']
languages ['nl', 'en', 'fr']
private false

Usage

Register the service provider
<?php

$app = new \Oak\Application();

$app->register([
    \Tnt\Blog\BlogServiceProvider::class,
]);

$app->bootstrap();
Implementation example
Controller
<?php

class blog extends base
{
    public static function index(Request $request, Page $page)
    {
        $app = Application::get();

        $dataList = $app->getWith(DataListInterface::class, [
            'repository' => BlogPosts::published()->recent(),
            'urlBuilder' => $app->getWith(BuilderInterface::class, [
                'base' => \dry\url('pages::view', $page),
            ]),
        ]);
        
        $tpl = parent::get_base_template($request, $page);
        $tpl->blogPosts = $dataList->getResults();
        $tpl->render( 'blog/index.tpl' );
    }
}