2017 © Pedro Peláez
 

symfony-bundle simple-page-bundle

Provides simple static page admin and display

image

jbouzekri/simple-page-bundle

Provides simple static page admin and display

  • Wednesday, August 6, 2014
  • by jbouzekri
  • Repository
  • 1 Watchers
  • 0 Stars
  • 41 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 0 Forks
  • 0 Open issues
  • 2 Versions
  • 0 % Grown

The README.md

SimplePageBundle

This bundle provides base classes to manage static page in your project and gives your users the mean to edit and change them with an admin interface. It was developed because a lot people asked for this simple functions and I was tired to implement it again and again with little difference., (*1)

Installation

Add jbouzekri/simple-page-bundle as a dependency in composer.json., (*2)

``` yml "jbouzekri/simple-page-bundle": "1.*", (*3)


Enable the bundle in your AppKernel : ``` php $bundles = array( ... new Jb\Bundle\SimplePageBundle\JbSimplePageBundle() );

And import the route in app/config/routing.yml :, (*4)

``` yml simple_page_route_imported: resource: "@JbSimplePageBundle/Resources/config/routing.yml", (*5)


*Important* : If you use the doctrine provider, the base page entity use the [doctrine extension of gedmo](https://packagist.org/packages/gedmo/doctrine-extensions). You must have the timestampable and sluggable extension enabled (to enable it easily, you can use the [wrapper created by stof](https://github.com/stof/StofDoctrineExtensionsBundle)). The bundle provides 2 page providers. The first one use Doctrine and store the page in the database. With this one, you can have an administration interface. The second one use the translator service to load page content but cannot be use with the admin interface. With the default configuration, the doctrine provider is used with the default entity Jb\Bundle\SimplePageBundle\Entity\Page. You can access the admin interface via the route /admin/page and the front page via the route /page/{slug}. Doctrine provider reference --------------------------- ``` yml jb_simple_page: entity: Jb\Bundle\SimplePageBundle\Entity\Page provider: doctrine form: jb_simple_page_default_form router: root_prefix: page admin_prefix: admin front: view_template: "JbSimplePageBundle:Front:view.html.twig" layout_template: "::base.html.twig" admin: index_template: "JbSimplePageBundle:Admin:index.html.twig" edit_template: "JbSimplePageBundle:Admin:edit.html.twig" layout_template: "::base.html.twig"
  • jb_simple_page.entity : the entity loaded
  • form : the name of the form (defined as a service) to used in admin interface
  • router.root_prefix : the route prefix used in the front and between the admin prefix and the slug in the admin
  • router.admin_prefix : the route prefix used in the admin interface (placed before the root prefix)
  • front.view_template : template to render page in front
  • front.layout_template : layout template to extend in front
  • admin.index_template : list page template in admin interface
  • admin.edit_template : edit/create page template in admin interface
  • admin.layout_template : layout template to extend in admin interface

Translator provider reference

``` yml jb_simple_page: provider: translator router: root_prefix: page front: view_template: "JbSimplePageBundle:Front:view.html.twig" layout_template: "::base.html.twig" translator: translation_domain: jb_simple_page pages: - slug-value ..., (*6)


* router.root_prefix : the route prefix used in the front and between the admin prefix and the slug in the admin * front.view_template : template to render page in front * front.layout_template : layout template to extend in front * translator.translation_domain : the translation domain to load page content * translator.pages : list of the page availables. In your translation file (translation_domain.locale.yml for example), for each page defined in translator.pages, you can defined : ``` yml slug-value: title: The title content: The content (html tags are not stripped or escaped) meta_title: the meta title meta_description: the meta description

You can override the TranslatorPageBuilder service if you want to add some fields., (*7)

Override

All services are defined with parameters for their class configuration. You can override them in your bundles. Moreover, some semantic configuration parameters allow you to change the templates. If it is not enough, you can use Symfony bundle inheritance to override some parts of the bundle, (*8)

License

MIT, (*9)

The Versions

06/08 2014

dev-master

9999999-dev https://github.com/jbouzekri/SimplePageBundle

Provides simple static page admin and display

  Sources   Download

MIT

The Requires

 

twig bundle symfony cms

06/08 2014

v1.0

1.0.0.0 https://github.com/jbouzekri/SimplePageBundle

Provides simple static page admin and display

  Sources   Download

MIT

The Requires

 

twig bundle symfony cms