Skip to content

Latest commit

 

History

History
67 lines (53 loc) · 1.68 KB

README.md

File metadata and controls

67 lines (53 loc) · 1.68 KB

DRY Blog

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

Index

Installation

composer require tallieutallieu/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', 'text-video', 'video-text']
languages ['nl', 'en', 'fr']
private false
required-fields ['photo', 'title', 'slug', 'publication_date']
publication_timestamp 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' );
    }
}