Symfony2 Content Management Framework

Le retour d'experience sur le site CRM du groupe Bel nos-bel-idees.fr





About David Buchmann

Twitter: @dbu

David is a senior developper at Liip SA, specializing in Symfony2. He happens to also be a certified Scrum Master and sometimes enjoys doing the scrum master or product owner role for a project.

Liip is doing custom web development with PHP in Switzerland.

About Alexis Janvier

Twitter: @alexisjanvier


Alexis est Lead Developer Php au sein de l'agence Rapp depuis maintenant 2 ans.

About Rapp France

Twitter: @RAPP_FRANCE

Site: rappfrance.com


Rapp est une agence marketing & communication digitale, riche de 160 collaborateurs.

Champs d'actions:
- Conception et développement d'interfaces digitales
- Stratégies Social Media
- Stratégie PRM et CRM
- Dispositif Digitaux Full Service
- Shopper Experience


Quelques clients:

Introduction to the Symfony2 CMF

The Symfony CMF project makes it easier for developers to add CMS functionality to applications built with the Symfony2 PHP framework. Key development principles for the provided set of bundles are scalability, usability, documentation and testing

CMF = Content Management Framework

Do we suffer from NIH?

Content Management = user controlled...


Content

Content Management = user controlled...


Menu structure

Content Management = user controlled...


URLs (Routes)

Content Management = user controlled...


Page structure (to some extent)

Symfony2 CMF Project


Diagrams

An overview with lots of pictures.

Symfony2 Control Flow

 


Symfony2 Control Flow

CMF additions


Routing

Content Bundle

Menu Bundle


Block: Sonata PHPCR ODM BlockBundle


Utility services

Publish Workflow

Media bundle

Frontend Editing: Create.js


Backend: Sonata PHPCR ODM Admin


Some words on storage

Doctrine PHPCR ODM

PHP Content Repository + Doctrine ODM

PHPCR (aka PHP-ified JCR specification)

Like MongoDB / CouchDB ODM

but different

PHPCR provides a standardized API that can be used by any PHP content management system to interface with any content repository.

Not all data fits well in PHPCR/JCR

Le retour d'experience sur

nos-bel-idees.fr

Le projet

Le site "Nos Bel Idées" est le site CRM (Customer Relationship Management, ou gestion de la relation client) du groupe Bel.


Les deux objectifs principaux fixés par le client étaient :



Pour cela, le site devait mobiliser plusieurs type de contenu, existant ou à créer :

- des bons de réduction -