Symfony Bundle for adding simple blog functionality to existing or new Symfony project.
MIT License
Symfony Bundle for adding simple blog functionality to existing or new Symfony project.
Version ^4.0 - Symfony ^4.0, twig/twig:^2.0 Version ^3.0 - Symfony ^3.0 Version ^1.0|^2.0 - Symfony ^2.7
TODO
$ composer.phar require harentius/blog-bundle
<?php
// config/bundles.php
return [
//...
Harentius\BlogBundle\HarentiusBlogBundle::class => ['all' => true],
//...
Stof\DoctrineExtensionsBundle\StofDoctrineExtensionsBundle::class => ['all' => true],
Knp\Bundle\PaginatorBundle\KnpPaginatorBundle::class => ['all' => true],
Knp\Bundle\MenuBundle\KnpMenuBundle::class => ['all' => true],
WhiteOctober\BreadcrumbsBundle\WhiteOctoberBreadcrumbsBundle::class => ['all' => true],
Sonata\CoreBundle\SonataCoreBundle::class => ['all' => true],
Sonata\BlockBundle\SonataBlockBundle::class => ['all' => true],
Sonata\DoctrineORMAdminBundle\SonataDoctrineORMAdminBundle::class => ['all' => true],
Sonata\AdminBundle\SonataAdminBundle::class => ['all' => true],
Sonata\TranslationBundle\SonataTranslationBundle::class => ['all' => true],
Sonata\Doctrine\Bridge\Symfony\Bundle\SonataDoctrineBundle::class => ['all' => true],
FOS\JsRoutingBundle\FOSJsRoutingBundle::class => ['all' => true],
Presta\SitemapBundle\PrestaSitemapBundle::class => ['all' => true],
Eko\FeedBundle\EkoFeedBundle::class => ['all' => true],
Liip\ImagineBundle\LiipImagineBundle::class => ['all' => true],
Hautelook\AliceBundle\HautelookAliceBundle::class => ['all' => true],
Fidry\AliceDataFixtures\Bridge\Symfony\FidryAliceDataFixturesBundle::class => ['all' => true],
Nelmio\Alice\Bridge\Symfony\NelmioAliceBundle::class => ['all' => true],
];
Please note that HarentiusBlogBundle can provide default configuration for other bundles. To make this work, HarentiusBlogBundle should be registered before other bundles
HarentiusBlogBundle also has default security config. So please make sure it does not conflict with your app config or skip using it
# config/routes.yaml
blog:
resource: "@HarentiusBlogBundle/Resources/config/routing.yml"
prefix: /
# config/packages/harentius_blog.yaml
imports:
- { resource: '@HarentiusBlogBundle/Resources/config/config.yml' }
Config reference:
harentius_blog:
# Localizations to be used by blog
locales: ['en', 'uk']
primary_locale: 'en'
articles:
# Path where previews stored
image_previews_base_uri: /assets/images/preview/
sidebar:
# ~ - no cache, 0 - unlimited cache
cache_lifetime: 3600
# Max tags number (ordered by max popularity)
tags_limit: 10
# Percent tags size, unlimited variants number (valid values: [50, 100], [25, 50, 75, 100], etc)
tag_sizes: [65, 80, 100]
homepage:
# ~ - no page, feed only or page slug
page_slug: index
# ~ - no feed
feed:
# ~ - all
category: ~
# Last articles number
number: 5
list:
posts_per_page: 20
# For avoiding internal apc cache conflicts if run multiple sites on one server.
cache:
apc_global_prefix: blog
bin/console doctrine:database:create # If fresh installation
bin/console doctrine:schema:create
bin/console assets:install --symlink
bin/console hautelook:fixtures:load
https://folkprog.net - example of blog based on this bundle.
https://github.com/harentius/folkprog - git repository with sources of this blog.