SlideShare a Scribd company logo
EXTENDING A SYMFONY APPLICATION BY CMS FEATURES
MAXIMILIAN BERGHOFF - 30.05.2017 - SYMFONY USERGROUP BERLIN
Maximilian Berghoff
@ElectricMaxxx
github.com/electricmaxxx
Maximilian.Berghoff@may ower.de
May ower GmbH - Würzburg
ONCE UPON A TIME ...
SYMFONY APPLICATION
THE LITTLE CONTENT
static content pages (legals, company info, ...)
content blocks (news, events, abstracts, ...)
content by business domain (product info, highlights, ...)
CONTENT EDITOR
EDITABLE ALL CONTENT
SEO
Editable Routing
Editable Menu Structure
CMS
Typo 3
Wordpress
Joomla
Drupal
...
DIY
Content editing
Persisting dif cult structured content
dynamic routing
i18n
SEO
Publish work ow
Nice User Interface
ONCE UPON A TIME
SYMFONY APPLICATION
FRAMEWORK
CONTENT MANAGEMENT FRAMEWORK
WHAT IS CONTENT?
text blocks
HTML snippets
Media les (images, videos, ...)
List/Containers of snippets, text or references
BEHIND THE SCENES:
PHPCR
CMF = LOTS OF PIECES
PHPCR - INTERFACE
JACKALOPE DoctrineDBAL
Jackrabbit
DOCTRINE
phpcr-odm
DoctrinePHPCRBundle
SYMFONY CMF
Components (routing, resources)
Bundles (core, routing, content, menu, ...)
ACTION
von Thiemo Schuff (Eigenes Werk) [ ],CC BY-SA 3.0 via Wikimedia
Commons
DYNAMIC ROUTING
use SymfonyCmfBundleRoutingBundleDoctrinePhpcrRoute;
NodeHelper::createPath($manager­>getPhpcrSession(), '/cms/routes');  
$routeBase = $manager­>find(null, '/cms/routes');
$route = new Route(); 
$route­>setPosition($routeBase, 'route_only');  
$route­>addDefaults(array('_controller' => 'default:routeOnlyAction'));  
$manager­>persist($route);  
$manager­>flush(); 
use SymfonyCmfBundleRoutingBundleDoctrinePhpcrRoute;
NodeHelper::createPath($manager­>getPhpcrSession(), '/cms/routes');  
$routeBase = $manager­>find(null, '/cms/routes');
$route = new Route(); 
$route­>setPosition($routeBase, 'route_only');  
$route­>addDefaults(array('_controller' => 'default:routeOnlyAction'));  
$manager­>persist($route);  
$manager­>flush(); 
use SymfonyCmfBundleRoutingBundleDoctrinePhpcrRoute;
NodeHelper::createPath($manager­>getPhpcrSession(), '/cms/routes');  
$routeBase = $manager­>find(null, '/cms/routes');
$route = new Route(); 
$route­>setPosition($routeBase, 'route_only');  
$route­>addDefaults(array('_controller' => 'default:routeOnlyAction'));  
$manager­>persist($route);  
$manager­>flush(); 
use SymfonyCmfBundleRoutingBundleDoctrinePhpcrRoute;
NodeHelper::createPath($manager­>getPhpcrSession(), '/cms/routes');  
$routeBase = $manager­>find(null, '/cms/routes');
$route = new Route(); 
$route­>setPosition($routeBase, 'route_only');  
$route­>addDefaults(array('_controller' => 'default:routeOnlyAction'));  
$manager­>persist($route);  
$manager­>flush(); 
use SymfonyCmfBundleRoutingBundleDoctrinePhpcrRoute;
NodeHelper::createPath($manager­>getPhpcrSession(), '/cms/routes');  
$routeBase = $manager­>find(null, '/cms/routes');
$route = new Route(); 
$route­>setPosition($routeBase, 'route_only');  
$route­>addDefaults(array('_controller' => 'default:routeOnlyAction'));  
$manager­>persist($route);  
$manager­>flush(); 
ADVANCED
$contentParent = $manager­>find(null, '/cms/content');  
$routeParent = $manager­>find(null, '/cms/routes');  
$menuParent = $manager­>find(null, '/cms/menu');  
 $enRoute = new Route(); 
 $enRoute­>setPosition($routeParent, 'en');  
 $manager­>persist($enRoute);  
 $deRoute = new Route();  
 $deRoute­>setPosition($routeParent, 'de');  
 $manager­>persist($deRoute);  
$enRoute = new Route(); 
$enRoute­>setPosition($routeParent, 'en');  
$manager­>persist($enRoute);  
$deRoute = new Route(); 
$deRoute­>setPosition($routeParent, 'de');  
$manager­>persist($deRoute);  
$enServiceRoute = new Route();  
$enServiceRoute­>setPosition($enRoute, 'services') ; 
$manager­>persist($enServiceRoute);
$deServiceRoute = new Route();  
$deServiceRoute­>setPosition($deRoute, 'dienstleistungen') ; 
$manager­>persist($deServiceRoute);  
$enServiceRoute = new Route();  
$enServiceRoute­>setName('services');  
$enServiceRoute­>setParentDocument($enRoute) ; 
$manager­>persist($enServiceRoute);
$deServiceRoute = new Route();  
$deServiceRoute­>setName('dienstleistungen');  
$deServiceRoute­>setParentDocument($deRoute) ; 
$manager­>persist($deServiceRoute);  
use SymfonyCmfBundleContentBundleDoctrinePhpcrStaticContent;
$content = new StaticContent();  
$content­>setParentDocument($contentParent);  
$content­>setName('symfony­service');  
$manager­>persist($content);  
$content­>setTitle('Symfony Service');  
$content­>setBody('A page about Symfony service');  
$manager­>bindTranslation($content, 'en');  
$contentRoute = new Route();  
$contentRoute­>setPosition($enServiceRoute, 'symfony­service');  
$contentRoute­>setContent($content);  
$manager­>persist($contentRoute);  
$content­>setTitle('Symfony Service');  
$content­>setBody('A page about Symfony service');  
$manager­>bindTranslation($content, 'en');  
$contentRoute = new Route();  
$contentRoute­>setPosition($enServiceRoute, 'symfony­service');  
$contentRoute­>setContent($content);  
$manager­>persist($contentRoute);  
$content­>setTitle('Symfony Service');  
$content­>setBody('A page about Symfony service');  
$manager­>bindTranslation($content, 'en');  
$contentRoute = new Route();  
$contentRoute­>setPosition($enServiceRoute, 'symfony­service');  
$contentRoute­>setContent($content);  
$manager­>persist($contentRoute);  
$content­>setTitle('Symfony Dienstleistungen');  
$content­>setBody('Eine Seite über Symfony Dienstleistungen');  
$manager­>bindTranslation($content, 'de');  
$contentRoute = new Route();  
$contentRoute­>setPosition($deServiceRoute, 'symfony­dienstleistungen');
$contentRoute­>setContent($content);  
$manager­>persist($contentRoute);  
/de/dienstleistungen/symfony-dienstleistungen
/en/services/symfony-service
cmf_routing: 
    dynamic: 
        templates_by_class: 
            ..StaticContent: ApplicationBundle:Page:index.html.twig  
    chain: 
        routers_by_id: 
            cmf_routing.dynamic_router: 200  
            router.default:             100  
$menu = new Menu(); 
$menu­>setPosition($menuParent, 'footer');  
$manager­>persist($menu);  
$menuNode = new MenuNode();  
$menuNode­>setParentDocument($menu);  
$menuNode­>setContent($content);  
$menuNode­>setName('symfony­service');  
$manager­>persist($menuNode);
$menuNode­>setLabel('Symfony Services');  
$manager­>bindTranslation($menuNode, 'en');  
$menuNode­>setLabel('Symfony Dienstleistungen');  
$manager­>bindTranslation($menuNode, 'de');  
$menuNode = new MenuNode();  
$menuNode­>setParentDocument($menu);  
$menuNode­>setContent($content);  
$menuNode­>setName('symfony­service');  
$manager­>persist($menuNode);
$menuNode­>setLabel('Symfony Services');  
$manager­>bindTranslation($menuNode, 'en');  
$menuNode­>setLabel('Symfony Dienstleistungen');  
$manager­>bindTranslation($menuNode, 'de');  
SEO
$content = new DemoSeoContent();  
$content­>setParentDocument($contentParent);  
$content­>setName('seo­service');  
$content­>setTitle('SEO Service');  
$content­>setBody('A page about SEO service');
$metaData = new SeoMetadata();  
$metaData­>setMetaDescription('Description in Metadata');  
$content­>setSeoMetadata($metaData);
$manager­>persist($content);  
use DoctrineODMPHPCRMappingAnnotations as PHPCRODM;
class DemoSeoContent extends StaticContent implements  
    SeoAwareInterface, 
    TitleReadInterface 
{
    /* @PHPCRODMChild / 
    protected $seoMetadata;  
    public function getSeoTitle()  
    {
        return 'By extractor ­ ' . $this­>getTitle();  
    }
}
CONCLUSION
QUESTIONS?
Ask Now!
Twitter: @ElectricMaxxx
Mail: Maximilian.Berghoff@may ower.de
LINKS
Website
Documentation
Mailinglist
IRC
Sandbox
Code Examples mentioned here
THANK YOU!

More Related Content

Viewers also liked

Fns sst-apt- 27-passagem inferior
Fns sst-apt- 27-passagem inferiorFns sst-apt- 27-passagem inferior
Fns sst-apt- 27-passagem inferior
NRFACIL www.nrfacil.com.br
 
CV ΛΑΡΙΣΑ-ΘΕΣΣΑΛΟΝΙΚΗ
CV ΛΑΡΙΣΑ-ΘΕΣΣΑΛΟΝΙΚΗCV ΛΑΡΙΣΑ-ΘΕΣΣΑΛΟΝΙΚΗ
CV ΛΑΡΙΣΑ-ΘΕΣΣΑΛΟΝΙΚΗ3darchdeco
 
Rest
RestRest
Muskuloskeletal assesment for spinal and hamstring flexibility
Muskuloskeletal  assesment for spinal and hamstring flexibilityMuskuloskeletal  assesment for spinal and hamstring flexibility
Muskuloskeletal assesment for spinal and hamstring flexibilityDian Kusumaningtyas
 
Cv λαρισα θεσσαλονικη
Cv λαρισα θεσσαλονικηCv λαρισα θεσσαλονικη
Cv λαρισα θεσσαλονικη
3darchdeco
 
Symfony-CMF/SeoBundle - unKonf
Symfony-CMF/SeoBundle - unKonfSymfony-CMF/SeoBundle - unKonf
Symfony-CMF/SeoBundle - unKonf
Maximilian Berghoff
 
Fns sst-apt- 26-passagem de gado
Fns sst-apt- 26-passagem de gadoFns sst-apt- 26-passagem de gado
Fns sst-apt- 26-passagem de gado
NRFACIL www.nrfacil.com.br
 
आम्ले आम्लारी आणि क्षार
आम्ले आम्लारी आणि क्षारआम्ले आम्लारी आणि क्षार
आम्ले आम्लारी आणि क्षार
Jnana Prabodhini Educational Resource Center
 
RESTing on HTTP
RESTing on HTTPRESTing on HTTP
RESTing on HTTP
Maximilian Berghoff
 
The desert g
The desert gThe desert g
Agriculture
AgricultureAgriculture
RESTing on HTTP - FrOSCon 10 - 2015-08-23
RESTing on HTTP - FrOSCon 10 - 2015-08-23RESTing on HTTP - FrOSCon 10 - 2015-08-23
RESTing on HTTP - FrOSCon 10 - 2015-08-23
Maximilian Berghoff
 
Modelagem computacional
Modelagem computacionalModelagem computacional
Modelagem computacional
NRFACIL www.nrfacil.com.br
 

Viewers also liked (14)

Fns sst-apt- 27-passagem inferior
Fns sst-apt- 27-passagem inferiorFns sst-apt- 27-passagem inferior
Fns sst-apt- 27-passagem inferior
 
CV ΛΑΡΙΣΑ-ΘΕΣΣΑΛΟΝΙΚΗ
CV ΛΑΡΙΣΑ-ΘΕΣΣΑΛΟΝΙΚΗCV ΛΑΡΙΣΑ-ΘΕΣΣΑΛΟΝΙΚΗ
CV ΛΑΡΙΣΑ-ΘΕΣΣΑΛΟΝΙΚΗ
 
Rest
RestRest
Rest
 
Muskuloskeletal assesment for spinal and hamstring flexibility
Muskuloskeletal  assesment for spinal and hamstring flexibilityMuskuloskeletal  assesment for spinal and hamstring flexibility
Muskuloskeletal assesment for spinal and hamstring flexibility
 
Cv λαρισα θεσσαλονικη
Cv λαρισα θεσσαλονικηCv λαρισα θεσσαλονικη
Cv λαρισα θεσσαλονικη
 
साधी यंत्रे
साधी यंत्रेसाधी यंत्रे
साधी यंत्रे
 
Symfony-CMF/SeoBundle - unKonf
Symfony-CMF/SeoBundle - unKonfSymfony-CMF/SeoBundle - unKonf
Symfony-CMF/SeoBundle - unKonf
 
Fns sst-apt- 26-passagem de gado
Fns sst-apt- 26-passagem de gadoFns sst-apt- 26-passagem de gado
Fns sst-apt- 26-passagem de gado
 
आम्ले आम्लारी आणि क्षार
आम्ले आम्लारी आणि क्षारआम्ले आम्लारी आणि क्षार
आम्ले आम्लारी आणि क्षार
 
RESTing on HTTP
RESTing on HTTPRESTing on HTTP
RESTing on HTTP
 
The desert g
The desert gThe desert g
The desert g
 
Agriculture
AgricultureAgriculture
Agriculture
 
RESTing on HTTP - FrOSCon 10 - 2015-08-23
RESTing on HTTP - FrOSCon 10 - 2015-08-23RESTing on HTTP - FrOSCon 10 - 2015-08-23
RESTing on HTTP - FrOSCon 10 - 2015-08-23
 
Modelagem computacional
Modelagem computacionalModelagem computacional
Modelagem computacional
 

Similar to Extending a symfony application by cms features

Eine Symfony Application um CMS-Funktionen erweitern
Eine Symfony Application um CMS-Funktionen erweiternEine Symfony Application um CMS-Funktionen erweitern
Eine Symfony Application um CMS-Funktionen erweitern
Maximilian Berghoff
 
World of Watson 2016 - Content Management
World of Watson 2016 - Content ManagementWorld of Watson 2016 - Content Management
World of Watson 2016 - Content Management
Keith Redman
 
TIMETOACT Web Content Management Extension for IBM Connections
TIMETOACT Web Content Management Extension for IBM ConnectionsTIMETOACT Web Content Management Extension for IBM Connections
TIMETOACT Web Content Management Extension for IBM Connections
Felix Binsack
 
ARCHIVE - TIMETOACT Web Content Management Extension for IBM Connections (XCC...
ARCHIVE - TIMETOACT Web Content Management Extension for IBM Connections (XCC...ARCHIVE - TIMETOACT Web Content Management Extension for IBM Connections (XCC...
ARCHIVE - TIMETOACT Web Content Management Extension for IBM Connections (XCC...
TIMETOACT GROUP
 
ARCHIVE - XCC 2.0, New presentation is here: http://www.slideshare.net/timet...
ARCHIVE -  XCC 2.0, New presentation is here: http://www.slideshare.net/timet...ARCHIVE -  XCC 2.0, New presentation is here: http://www.slideshare.net/timet...
ARCHIVE - XCC 2.0, New presentation is here: http://www.slideshare.net/timet...
TIMETOACT GROUP
 
Marcus Kesseler: Weaving XML Into Your Workflows: Use Cases, Tools, Pitfalls ...
Marcus Kesseler: Weaving XML Into Your Workflows: Use Cases, Tools, Pitfalls ...Marcus Kesseler: Weaving XML Into Your Workflows: Use Cases, Tools, Pitfalls ...
Marcus Kesseler: Weaving XML Into Your Workflows: Use Cases, Tools, Pitfalls ...
StartWithXMLLondon
 
RAD with IPF on ImpressCMS 1.2
RAD with IPF on ImpressCMS 1.2RAD with IPF on ImpressCMS 1.2
RAD with IPF on ImpressCMS 1.2
INBOX International inc.
 
Extending Apostrophe to build a variable-based CMS for rendering PDF brochures
Extending Apostrophe to build a variable-based CMS for rendering PDF brochuresExtending Apostrophe to build a variable-based CMS for rendering PDF brochures
Extending Apostrophe to build a variable-based CMS for rendering PDF brochures
Spike Brehm
 
Ti 1217 extend and surround your Adobe DX solutions with IBM Software
Ti 1217 extend and surround your Adobe DX solutions with IBM SoftwareTi 1217 extend and surround your Adobe DX solutions with IBM Software
Ti 1217 extend and surround your Adobe DX solutions with IBM Software
Heiko Voigt
 
Amplexor Customer Experience Management seminar Technical overview Euroclear ...
Amplexor Customer Experience Management seminar Technical overview Euroclear ...Amplexor Customer Experience Management seminar Technical overview Euroclear ...
Amplexor Customer Experience Management seminar Technical overview Euroclear ...
Amplexor
 
HTML Hypermedia APIs and Adaptive Web Design - jDays 2013
HTML Hypermedia APIs and Adaptive Web Design - jDays 2013HTML Hypermedia APIs and Adaptive Web Design - jDays 2013
HTML Hypermedia APIs and Adaptive Web Design - jDays 2013
Gustaf Nilsson Kotte
 
Mobile Real Estate Marketing Project
Mobile Real Estate Marketing ProjectMobile Real Estate Marketing Project
Mobile Real Estate Marketing Project
mheads
 
Moving from AWS to Atlas - Our Motivation and Journey from Self-Hosted to Man...
Moving from AWS to Atlas - Our Motivation and Journey from Self-Hosted to Man...Moving from AWS to Atlas - Our Motivation and Journey from Self-Hosted to Man...
Moving from AWS to Atlas - Our Motivation and Journey from Self-Hosted to Man...
Christoph Caprano
 
Rosinski ibm ai overview with several examples of projects in the media and l...
Rosinski ibm ai overview with several examples of projects in the media and l...Rosinski ibm ai overview with several examples of projects in the media and l...
Rosinski ibm ai overview with several examples of projects in the media and l...
FIAT/IFTA
 
Presentation
PresentationPresentation
Presentation
Sr. UI Engineer
 
S016576 managing-data-footprint-reduction-brazil-v1708f
S016576 managing-data-footprint-reduction-brazil-v1708fS016576 managing-data-footprint-reduction-brazil-v1708f
S016576 managing-data-footprint-reduction-brazil-v1708f
Tony Pearson
 
Migrating Belgium's Largest Telecommunication Company to Magnolia
Migrating Belgium's Largest Telecommunication Company to Magnolia Migrating Belgium's Largest Telecommunication Company to Magnolia
Migrating Belgium's Largest Telecommunication Company to Magnolia
Magnolia
 
Ui5con virtual tour_around_a_company_site_with_ui5
Ui5con virtual tour_around_a_company_site_with_ui5Ui5con virtual tour_around_a_company_site_with_ui5
Ui5con virtual tour_around_a_company_site_with_ui5
Helmut Tammen
 
Multi-Channel Publishing Platform that Improves Collaboration and Creation of...
Multi-Channel Publishing Platform that Improves Collaboration and Creation of...Multi-Channel Publishing Platform that Improves Collaboration and Creation of...
Multi-Channel Publishing Platform that Improves Collaboration and Creation of...
Superior Media Solutions, LLC
 
ImpressCMS IPF Webcast Session 1
ImpressCMS IPF Webcast Session 1ImpressCMS IPF Webcast Session 1
ImpressCMS IPF Webcast Session 1
INBOX International inc.
 

Similar to Extending a symfony application by cms features (20)

Eine Symfony Application um CMS-Funktionen erweitern
Eine Symfony Application um CMS-Funktionen erweiternEine Symfony Application um CMS-Funktionen erweitern
Eine Symfony Application um CMS-Funktionen erweitern
 
World of Watson 2016 - Content Management
World of Watson 2016 - Content ManagementWorld of Watson 2016 - Content Management
World of Watson 2016 - Content Management
 
TIMETOACT Web Content Management Extension for IBM Connections
TIMETOACT Web Content Management Extension for IBM ConnectionsTIMETOACT Web Content Management Extension for IBM Connections
TIMETOACT Web Content Management Extension for IBM Connections
 
ARCHIVE - TIMETOACT Web Content Management Extension for IBM Connections (XCC...
ARCHIVE - TIMETOACT Web Content Management Extension for IBM Connections (XCC...ARCHIVE - TIMETOACT Web Content Management Extension for IBM Connections (XCC...
ARCHIVE - TIMETOACT Web Content Management Extension for IBM Connections (XCC...
 
ARCHIVE - XCC 2.0, New presentation is here: http://www.slideshare.net/timet...
ARCHIVE -  XCC 2.0, New presentation is here: http://www.slideshare.net/timet...ARCHIVE -  XCC 2.0, New presentation is here: http://www.slideshare.net/timet...
ARCHIVE - XCC 2.0, New presentation is here: http://www.slideshare.net/timet...
 
Marcus Kesseler: Weaving XML Into Your Workflows: Use Cases, Tools, Pitfalls ...
Marcus Kesseler: Weaving XML Into Your Workflows: Use Cases, Tools, Pitfalls ...Marcus Kesseler: Weaving XML Into Your Workflows: Use Cases, Tools, Pitfalls ...
Marcus Kesseler: Weaving XML Into Your Workflows: Use Cases, Tools, Pitfalls ...
 
RAD with IPF on ImpressCMS 1.2
RAD with IPF on ImpressCMS 1.2RAD with IPF on ImpressCMS 1.2
RAD with IPF on ImpressCMS 1.2
 
Extending Apostrophe to build a variable-based CMS for rendering PDF brochures
Extending Apostrophe to build a variable-based CMS for rendering PDF brochuresExtending Apostrophe to build a variable-based CMS for rendering PDF brochures
Extending Apostrophe to build a variable-based CMS for rendering PDF brochures
 
Ti 1217 extend and surround your Adobe DX solutions with IBM Software
Ti 1217 extend and surround your Adobe DX solutions with IBM SoftwareTi 1217 extend and surround your Adobe DX solutions with IBM Software
Ti 1217 extend and surround your Adobe DX solutions with IBM Software
 
Amplexor Customer Experience Management seminar Technical overview Euroclear ...
Amplexor Customer Experience Management seminar Technical overview Euroclear ...Amplexor Customer Experience Management seminar Technical overview Euroclear ...
Amplexor Customer Experience Management seminar Technical overview Euroclear ...
 
HTML Hypermedia APIs and Adaptive Web Design - jDays 2013
HTML Hypermedia APIs and Adaptive Web Design - jDays 2013HTML Hypermedia APIs and Adaptive Web Design - jDays 2013
HTML Hypermedia APIs and Adaptive Web Design - jDays 2013
 
Mobile Real Estate Marketing Project
Mobile Real Estate Marketing ProjectMobile Real Estate Marketing Project
Mobile Real Estate Marketing Project
 
Moving from AWS to Atlas - Our Motivation and Journey from Self-Hosted to Man...
Moving from AWS to Atlas - Our Motivation and Journey from Self-Hosted to Man...Moving from AWS to Atlas - Our Motivation and Journey from Self-Hosted to Man...
Moving from AWS to Atlas - Our Motivation and Journey from Self-Hosted to Man...
 
Rosinski ibm ai overview with several examples of projects in the media and l...
Rosinski ibm ai overview with several examples of projects in the media and l...Rosinski ibm ai overview with several examples of projects in the media and l...
Rosinski ibm ai overview with several examples of projects in the media and l...
 
Presentation
PresentationPresentation
Presentation
 
S016576 managing-data-footprint-reduction-brazil-v1708f
S016576 managing-data-footprint-reduction-brazil-v1708fS016576 managing-data-footprint-reduction-brazil-v1708f
S016576 managing-data-footprint-reduction-brazil-v1708f
 
Migrating Belgium's Largest Telecommunication Company to Magnolia
Migrating Belgium's Largest Telecommunication Company to Magnolia Migrating Belgium's Largest Telecommunication Company to Magnolia
Migrating Belgium's Largest Telecommunication Company to Magnolia
 
Ui5con virtual tour_around_a_company_site_with_ui5
Ui5con virtual tour_around_a_company_site_with_ui5Ui5con virtual tour_around_a_company_site_with_ui5
Ui5con virtual tour_around_a_company_site_with_ui5
 
Multi-Channel Publishing Platform that Improves Collaboration and Creation of...
Multi-Channel Publishing Platform that Improves Collaboration and Creation of...Multi-Channel Publishing Platform that Improves Collaboration and Creation of...
Multi-Channel Publishing Platform that Improves Collaboration and Creation of...
 
ImpressCMS IPF Webcast Session 1
ImpressCMS IPF Webcast Session 1ImpressCMS IPF Webcast Session 1
ImpressCMS IPF Webcast Session 1
 

More from Maximilian Berghoff

Sustainability in der deploy pipeline
Sustainability in der deploy pipelineSustainability in der deploy pipeline
Sustainability in der deploy pipeline
Maximilian Berghoff
 
Development is for future
Development is for futureDevelopment is for future
Development is for future
Maximilian Berghoff
 
Development is for future
Development is for futureDevelopment is for future
Development is for future
Maximilian Berghoff
 
Natural language understanding meets php php ruhr 2018
Natural language understanding meets php   php ruhr 2018Natural language understanding meets php   php ruhr 2018
Natural language understanding meets php php ruhr 2018
Maximilian Berghoff
 
NLU meets PHP
NLU meets PHPNLU meets PHP
NLU meets PHP
Maximilian Berghoff
 
Angular Mini Hackathon Code Talks 2019
Angular Mini Hackathon Code Talks 2019Angular Mini Hackathon Code Talks 2019
Angular Mini Hackathon Code Talks 2019
Maximilian Berghoff
 
Search engine optimization for symfony developers
Search engine optimization for symfony developersSearch engine optimization for symfony developers
Search engine optimization for symfony developers
Maximilian Berghoff
 
Introduction into FrOSCon PHP Track
Introduction into FrOSCon PHP TrackIntroduction into FrOSCon PHP Track
Introduction into FrOSCon PHP Track
Maximilian Berghoff
 
Angular Workshop FrOSCon 2018
Angular Workshop  FrOSCon 2018Angular Workshop  FrOSCon 2018
Angular Workshop FrOSCon 2018
Maximilian Berghoff
 
API Plattform - A Backend in Minutes
API Plattform - A Backend in MinutesAPI Plattform - A Backend in Minutes
API Plattform - A Backend in Minutes
Maximilian Berghoff
 
The content manager loves the tree
The content manager loves the treeThe content manager loves the tree
The content manager loves the tree
Maximilian Berghoff
 
Aspects Of Code Quality meetup
Aspects Of Code Quality   meetupAspects Of Code Quality   meetup
Aspects Of Code Quality meetup
Maximilian Berghoff
 
Reactive Javascript - FrOSCon - 2016
Reactive Javascript - FrOSCon - 2016Reactive Javascript - FrOSCon - 2016
Reactive Javascript - FrOSCon - 2016
Maximilian Berghoff
 
Concepts of Code Quality
Concepts of Code QualityConcepts of Code Quality
Concepts of Code Quality
Maximilian Berghoff
 
Mit dem API ins CMS
Mit dem API ins CMSMit dem API ins CMS
Mit dem API ins CMS
Maximilian Berghoff
 
Reactive java script mit rxjs basta! 2016
Reactive java script mit rxjs   basta! 2016Reactive java script mit rxjs   basta! 2016
Reactive java script mit rxjs basta! 2016
Maximilian Berghoff
 

More from Maximilian Berghoff (16)

Sustainability in der deploy pipeline
Sustainability in der deploy pipelineSustainability in der deploy pipeline
Sustainability in der deploy pipeline
 
Development is for future
Development is for futureDevelopment is for future
Development is for future
 
Development is for future
Development is for futureDevelopment is for future
Development is for future
 
Natural language understanding meets php php ruhr 2018
Natural language understanding meets php   php ruhr 2018Natural language understanding meets php   php ruhr 2018
Natural language understanding meets php php ruhr 2018
 
NLU meets PHP
NLU meets PHPNLU meets PHP
NLU meets PHP
 
Angular Mini Hackathon Code Talks 2019
Angular Mini Hackathon Code Talks 2019Angular Mini Hackathon Code Talks 2019
Angular Mini Hackathon Code Talks 2019
 
Search engine optimization for symfony developers
Search engine optimization for symfony developersSearch engine optimization for symfony developers
Search engine optimization for symfony developers
 
Introduction into FrOSCon PHP Track
Introduction into FrOSCon PHP TrackIntroduction into FrOSCon PHP Track
Introduction into FrOSCon PHP Track
 
Angular Workshop FrOSCon 2018
Angular Workshop  FrOSCon 2018Angular Workshop  FrOSCon 2018
Angular Workshop FrOSCon 2018
 
API Plattform - A Backend in Minutes
API Plattform - A Backend in MinutesAPI Plattform - A Backend in Minutes
API Plattform - A Backend in Minutes
 
The content manager loves the tree
The content manager loves the treeThe content manager loves the tree
The content manager loves the tree
 
Aspects Of Code Quality meetup
Aspects Of Code Quality   meetupAspects Of Code Quality   meetup
Aspects Of Code Quality meetup
 
Reactive Javascript - FrOSCon - 2016
Reactive Javascript - FrOSCon - 2016Reactive Javascript - FrOSCon - 2016
Reactive Javascript - FrOSCon - 2016
 
Concepts of Code Quality
Concepts of Code QualityConcepts of Code Quality
Concepts of Code Quality
 
Mit dem API ins CMS
Mit dem API ins CMSMit dem API ins CMS
Mit dem API ins CMS
 
Reactive java script mit rxjs basta! 2016
Reactive java script mit rxjs   basta! 2016Reactive java script mit rxjs   basta! 2016
Reactive java script mit rxjs basta! 2016
 

Recently uploaded

Internet of Things in Manufacturing: Revolutionizing Efficiency & Quality | C...
Internet of Things in Manufacturing: Revolutionizing Efficiency & Quality | C...Internet of Things in Manufacturing: Revolutionizing Efficiency & Quality | C...
Internet of Things in Manufacturing: Revolutionizing Efficiency & Quality | C...
CIOWomenMagazine
 
1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样
1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样
1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样
3ipehhoa
 
成绩单ps(UST毕业证)圣托马斯大学毕业证成绩单快速办理
成绩单ps(UST毕业证)圣托马斯大学毕业证成绩单快速办理成绩单ps(UST毕业证)圣托马斯大学毕业证成绩单快速办理
成绩单ps(UST毕业证)圣托马斯大学毕业证成绩单快速办理
ysasp1
 
APNIC Foundation, presented by Ellisha Heppner at the PNG DNS Forum 2024
APNIC Foundation, presented by Ellisha Heppner at the PNG DNS Forum 2024APNIC Foundation, presented by Ellisha Heppner at the PNG DNS Forum 2024
APNIC Foundation, presented by Ellisha Heppner at the PNG DNS Forum 2024
APNIC
 
急速办(bedfordhire毕业证书)英国贝德福特大学毕业证成绩单原版一模一样
急速办(bedfordhire毕业证书)英国贝德福特大学毕业证成绩单原版一模一样急速办(bedfordhire毕业证书)英国贝德福特大学毕业证成绩单原版一模一样
急速办(bedfordhire毕业证书)英国贝德福特大学毕业证成绩单原版一模一样
3ipehhoa
 
办理毕业证(UPenn毕业证)宾夕法尼亚大学毕业证成绩单快速办理
办理毕业证(UPenn毕业证)宾夕法尼亚大学毕业证成绩单快速办理办理毕业证(UPenn毕业证)宾夕法尼亚大学毕业证成绩单快速办理
办理毕业证(UPenn毕业证)宾夕法尼亚大学毕业证成绩单快速办理
uehowe
 
制作原版1:1(Monash毕业证)莫纳什大学毕业证成绩单办理假
制作原版1:1(Monash毕业证)莫纳什大学毕业证成绩单办理假制作原版1:1(Monash毕业证)莫纳什大学毕业证成绩单办理假
制作原版1:1(Monash毕业证)莫纳什大学毕业证成绩单办理假
ukwwuq
 
重新申请毕业证书(RMIT毕业证)皇家墨尔本理工大学毕业证成绩单精仿办理
重新申请毕业证书(RMIT毕业证)皇家墨尔本理工大学毕业证成绩单精仿办理重新申请毕业证书(RMIT毕业证)皇家墨尔本理工大学毕业证成绩单精仿办理
重新申请毕业证书(RMIT毕业证)皇家墨尔本理工大学毕业证成绩单精仿办理
vmemo1
 
Gen Z and the marketplaces - let's translate their needs
Gen Z and the marketplaces - let's translate their needsGen Z and the marketplaces - let's translate their needs
Gen Z and the marketplaces - let's translate their needs
Laura Szabó
 
可查真实(Monash毕业证)西澳大学毕业证成绩单退学买
可查真实(Monash毕业证)西澳大学毕业证成绩单退学买可查真实(Monash毕业证)西澳大学毕业证成绩单退学买
可查真实(Monash毕业证)西澳大学毕业证成绩单退学买
cuobya
 
Bài tập unit 1 English in the world.docx
Bài tập unit 1 English in the world.docxBài tập unit 1 English in the world.docx
Bài tập unit 1 English in the world.docx
nhiyenphan2005
 
Understanding User Behavior with Google Analytics.pdf
Understanding User Behavior with Google Analytics.pdfUnderstanding User Behavior with Google Analytics.pdf
Understanding User Behavior with Google Analytics.pdf
SEO Article Boost
 
原版仿制(uob毕业证书)英国伯明翰大学毕业证本科学历证书原版一模一样
原版仿制(uob毕业证书)英国伯明翰大学毕业证本科学历证书原版一模一样原版仿制(uob毕业证书)英国伯明翰大学毕业证本科学历证书原版一模一样
原版仿制(uob毕业证书)英国伯明翰大学毕业证本科学历证书原版一模一样
3ipehhoa
 
Italy Agriculture Equipment Market Outlook to 2027
Italy Agriculture Equipment Market Outlook to 2027Italy Agriculture Equipment Market Outlook to 2027
Italy Agriculture Equipment Market Outlook to 2027
harveenkaur52
 
Meet up Milano 14 _ Axpo Italia_ Migration from Mule3 (On-prem) to.pdf
Meet up Milano 14 _ Axpo Italia_ Migration from Mule3 (On-prem) to.pdfMeet up Milano 14 _ Axpo Italia_ Migration from Mule3 (On-prem) to.pdf
Meet up Milano 14 _ Axpo Italia_ Migration from Mule3 (On-prem) to.pdf
Florence Consulting
 
7 Best Cloud Hosting Services to Try Out in 2024
7 Best Cloud Hosting Services to Try Out in 20247 Best Cloud Hosting Services to Try Out in 2024
7 Best Cloud Hosting Services to Try Out in 2024
Danica Gill
 
学位认证网(DU毕业证)迪肯大学毕业证成绩单一比一原版制作
学位认证网(DU毕业证)迪肯大学毕业证成绩单一比一原版制作学位认证网(DU毕业证)迪肯大学毕业证成绩单一比一原版制作
学位认证网(DU毕业证)迪肯大学毕业证成绩单一比一原版制作
zyfovom
 
[HUN][hackersuli] Red Teaming alapok 2024
[HUN][hackersuli] Red Teaming alapok 2024[HUN][hackersuli] Red Teaming alapok 2024
[HUN][hackersuli] Red Teaming alapok 2024
hackersuli
 
manuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaal
manuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalmanuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaal
manuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaal
wolfsoftcompanyco
 
Explore-Insanony: Watch Instagram Stories Secretly
Explore-Insanony: Watch Instagram Stories SecretlyExplore-Insanony: Watch Instagram Stories Secretly
Explore-Insanony: Watch Instagram Stories Secretly
Trending Blogers
 

Recently uploaded (20)

Internet of Things in Manufacturing: Revolutionizing Efficiency & Quality | C...
Internet of Things in Manufacturing: Revolutionizing Efficiency & Quality | C...Internet of Things in Manufacturing: Revolutionizing Efficiency & Quality | C...
Internet of Things in Manufacturing: Revolutionizing Efficiency & Quality | C...
 
1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样
1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样
1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样
 
成绩单ps(UST毕业证)圣托马斯大学毕业证成绩单快速办理
成绩单ps(UST毕业证)圣托马斯大学毕业证成绩单快速办理成绩单ps(UST毕业证)圣托马斯大学毕业证成绩单快速办理
成绩单ps(UST毕业证)圣托马斯大学毕业证成绩单快速办理
 
APNIC Foundation, presented by Ellisha Heppner at the PNG DNS Forum 2024
APNIC Foundation, presented by Ellisha Heppner at the PNG DNS Forum 2024APNIC Foundation, presented by Ellisha Heppner at the PNG DNS Forum 2024
APNIC Foundation, presented by Ellisha Heppner at the PNG DNS Forum 2024
 
急速办(bedfordhire毕业证书)英国贝德福特大学毕业证成绩单原版一模一样
急速办(bedfordhire毕业证书)英国贝德福特大学毕业证成绩单原版一模一样急速办(bedfordhire毕业证书)英国贝德福特大学毕业证成绩单原版一模一样
急速办(bedfordhire毕业证书)英国贝德福特大学毕业证成绩单原版一模一样
 
办理毕业证(UPenn毕业证)宾夕法尼亚大学毕业证成绩单快速办理
办理毕业证(UPenn毕业证)宾夕法尼亚大学毕业证成绩单快速办理办理毕业证(UPenn毕业证)宾夕法尼亚大学毕业证成绩单快速办理
办理毕业证(UPenn毕业证)宾夕法尼亚大学毕业证成绩单快速办理
 
制作原版1:1(Monash毕业证)莫纳什大学毕业证成绩单办理假
制作原版1:1(Monash毕业证)莫纳什大学毕业证成绩单办理假制作原版1:1(Monash毕业证)莫纳什大学毕业证成绩单办理假
制作原版1:1(Monash毕业证)莫纳什大学毕业证成绩单办理假
 
重新申请毕业证书(RMIT毕业证)皇家墨尔本理工大学毕业证成绩单精仿办理
重新申请毕业证书(RMIT毕业证)皇家墨尔本理工大学毕业证成绩单精仿办理重新申请毕业证书(RMIT毕业证)皇家墨尔本理工大学毕业证成绩单精仿办理
重新申请毕业证书(RMIT毕业证)皇家墨尔本理工大学毕业证成绩单精仿办理
 
Gen Z and the marketplaces - let's translate their needs
Gen Z and the marketplaces - let's translate their needsGen Z and the marketplaces - let's translate their needs
Gen Z and the marketplaces - let's translate their needs
 
可查真实(Monash毕业证)西澳大学毕业证成绩单退学买
可查真实(Monash毕业证)西澳大学毕业证成绩单退学买可查真实(Monash毕业证)西澳大学毕业证成绩单退学买
可查真实(Monash毕业证)西澳大学毕业证成绩单退学买
 
Bài tập unit 1 English in the world.docx
Bài tập unit 1 English in the world.docxBài tập unit 1 English in the world.docx
Bài tập unit 1 English in the world.docx
 
Understanding User Behavior with Google Analytics.pdf
Understanding User Behavior with Google Analytics.pdfUnderstanding User Behavior with Google Analytics.pdf
Understanding User Behavior with Google Analytics.pdf
 
原版仿制(uob毕业证书)英国伯明翰大学毕业证本科学历证书原版一模一样
原版仿制(uob毕业证书)英国伯明翰大学毕业证本科学历证书原版一模一样原版仿制(uob毕业证书)英国伯明翰大学毕业证本科学历证书原版一模一样
原版仿制(uob毕业证书)英国伯明翰大学毕业证本科学历证书原版一模一样
 
Italy Agriculture Equipment Market Outlook to 2027
Italy Agriculture Equipment Market Outlook to 2027Italy Agriculture Equipment Market Outlook to 2027
Italy Agriculture Equipment Market Outlook to 2027
 
Meet up Milano 14 _ Axpo Italia_ Migration from Mule3 (On-prem) to.pdf
Meet up Milano 14 _ Axpo Italia_ Migration from Mule3 (On-prem) to.pdfMeet up Milano 14 _ Axpo Italia_ Migration from Mule3 (On-prem) to.pdf
Meet up Milano 14 _ Axpo Italia_ Migration from Mule3 (On-prem) to.pdf
 
7 Best Cloud Hosting Services to Try Out in 2024
7 Best Cloud Hosting Services to Try Out in 20247 Best Cloud Hosting Services to Try Out in 2024
7 Best Cloud Hosting Services to Try Out in 2024
 
学位认证网(DU毕业证)迪肯大学毕业证成绩单一比一原版制作
学位认证网(DU毕业证)迪肯大学毕业证成绩单一比一原版制作学位认证网(DU毕业证)迪肯大学毕业证成绩单一比一原版制作
学位认证网(DU毕业证)迪肯大学毕业证成绩单一比一原版制作
 
[HUN][hackersuli] Red Teaming alapok 2024
[HUN][hackersuli] Red Teaming alapok 2024[HUN][hackersuli] Red Teaming alapok 2024
[HUN][hackersuli] Red Teaming alapok 2024
 
manuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaal
manuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalmanuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaal
manuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaal
 
Explore-Insanony: Watch Instagram Stories Secretly
Explore-Insanony: Watch Instagram Stories SecretlyExplore-Insanony: Watch Instagram Stories Secretly
Explore-Insanony: Watch Instagram Stories Secretly
 

Extending a symfony application by cms features