Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Content & Master Data Management with Pimcore
Search
Christoph Lühr
October 26, 2018
Programming
1
650
Content & Master Data Management with Pimcore
SymfonyLive Berlin 2018 [de]
Christoph Lühr
October 26, 2018
Tweet
Share
More Decks by Christoph Lühr
See All by Christoph Lühr
Vektor-Suche & LLMs
chluehr
0
93
Search, Embeddings & Vector-DBs
chluehr
0
110
Reality Check: Automated Content Production at Enterprise Scale with Pimcore
chluehr
0
63
The how and why of getting Freelancers
chluehr
0
68
Master Data Management with Pimcore
chluehr
0
200
Swoole in 5 Minutes [en]
chluehr
1
12k
PIM & Master Data Management with Pimcore 5 [en]
chluehr
2
300
Digital Transformation & Master Data Management with Pimcore 5
chluehr
0
240
LXD System Containers [en]
chluehr
0
340
Other Decks in Programming
See All in Programming
Android16 Migration Stories ~Building a Pattern for Android OS upgrades~
reoandroider
0
110
Devvox Belgium - Agentic AI Patterns
kdubois
1
120
はじめてのDSPy - 言語モデルを『プロンプト』ではなく『プログラミング』するための仕組み
masahiro_nishimi
2
230
CSC509 Lecture 03
javiergs
PRO
0
340
Cloudflare AgentsとAI SDKでAIエージェントを作ってみた
briete
0
140
iOSエンジニア向けの英語学習アプリを作る!
yukawashouhei
0
190
いま中途半端なSwift 6対応をするより、Default ActorやApproachable Concurrencyを有効にしてからでいいんじゃない?
yimajo
2
420
Leading Effective Engineering Teams in the AI Era
addyosmani
3
380
AI Coding Meetup #3 - 導入セッション / ai-coding-meetup-3
izumin5210
0
3.3k
After go func(): Goroutines Through a Beginner’s Eye
97vaibhav
0
390
(Extension DC 2025) Actor境界を越える技術
teamhimeh
1
250
Go Conference 2025: Goで体感するMultipath TCP ― Go 1.24 時代の MPTCP Listener を理解する
takehaya
9
1.7k
Featured
See All Featured
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.6k
How To Stay Up To Date on Web Technology
chriscoyier
791
250k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
Speed Design
sergeychernyshev
32
1.2k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
A Modern Web Designer's Workflow
chriscoyier
697
190k
Making the Leap to Tech Lead
cromwellryan
135
9.6k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
Faster Mobile Websites
deanohume
310
31k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.7k
YesSQL, Process and Tooling at Scale
rocio
173
14k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
23
1.5k
Transcript
Christoph Lühr @chluehr / SymfonyLive 2018-10-26 Content & Master Data
Management mit
Unicode Character 'HAPPY PERSON RAISING ONE HAND' (U+1F64B)
"Pimcore ist die beste PHP Data Management Plattform" Christoph Lühr
None
None
20 Min. Daten von OpenStreetMap - Veröffentlicht unter ODbL (http://opendatacommons.org/licenses/odbl/)
None
(#) Internet
(#) Digitale Transformation
None
Content Management
Content Data Management
Master Data Management
Single SourcE Of Truth
None
None
None
None
None
Image source: https://instagram.com/p/wse6D4LtB1/
By Persian Poet Gal, Surachit, Winstonza, Lord Leatherface, Leptictidium, AnonMoos,
Chongtin, RuM, Popolon, Uwe Gille, Wyvernoid, Kikos, Hisagi, LambdaCorp, Tux the penguin, Patrol110, 2(L.L.K.)2, Мелкијадес, Homo lupus, Erikire, Jcfidy, Angelito7, Kandar, Router, Lord Leatherface, Whidou, CC BY-SA 3.0, https://commons.wikimedia.org/w/index.php?curid=39183625
None
Alternativen?
Spezialisiert (PIM)
None
None
None
None
Wrench by i cons from the Noun Project
Snail by Juraj Sedlák from the Noun Project
CMS (mit Erweiterungen)
None
None
None
None
None
(!fun) clock by Ananth from the Noun Project
Framework (+ Bundles)
None
None
None
€€€ clock by Ananth from the Noun Project
None
None
Von Free Software Foundation - gnu.org/graphics/license-logos.html, Gemeinfrei, https://commons.wikimedia.org/w/index.php?curid=5393454
None
7.1+
3.4
None
Von Carlos Prioglio - http://redis.io/images/redis-logo.svg, Logo, https://de.wikipedia.org/w/index.php?curid=8041512
None
None
composer \ create-project \ pimcore/pimcore \ my-project
None
+
None
+
None
(Master) Data Management
Image source: http://blog.feixen.de/gefunden-im-web/fliesentische/
Image source: http://icons8.com/web-app/1475/Database
Image source: http://icons8.com/web-app/1475/Database
Image source: http://icons8.com/web-app/1475/Database CODE
None
None
# Object # Classes
None
+
None
None
40+ Field Types
None
None
None
None
Versionen Diffs / Schedules / ...
None
Listen Edit / CSV / Operators / ...
None
None
None
Custom Views + Perspektiven ( -rollenbasiert )
None
Varianten & Vererbung
None
Berechtigungen Op.- / Pfad- / Rollen-
None
Workflows Symfony Workflow Component
None
None
E-Commerce Framework
None
CRM Framework
None
None
Image source: http://www.flickr.com/photos/rietje/76566707/ CC BY 2.0
Zeig mir CODE!
<?php ORM ?> + DB Migrations
// Object creation $person = Object\Person::create(array( 'name' => 'Chris', 'description'
=> 'Fast talker' )); $person->setWeight(75); $person->save();
// Object retrieval $personList = new Object\Person\Listing(); $personList->setOrderKey("weight"); $personList->setOrder("DESC"); foreach
($personList as $person) { ... $results = Object\Person::getByWeight(75);
PHP / REST / WebDAV
None
None
None
+
+
+
Bilder Formate & Thumbnails
Libre Office Ghostscript Image Magick Ffmpeg [..]
Pipelines Bildverarbeitung
None
None
None
None
WANTED WANTED
None
// using piplines for asset formats in code: $asset->getThumbnail("marioPipe"); //
=> /thumb_marioPipe/
[email protected]
$asset->getThumbnail("marioPipe")->getHTML(); // => <img ... srcset / media queries
None
+
None
None
+
!
Image source: https://www.pimcore.org/ +
Image source: https://www.pimcore.org/
Web 2 Print (PDF Generation)
Image source: https://www.pimcore.org/ +
Image source: https://www.pimcore.org/
Image source: https://www.pimcore.org/
Image source: https://www.pimcore.org/ +
Image source: https://www.pimcore.org/
Image source: https://www.pimcore.org/
Image source: https://www.pdfreactor.com/
Zeig mir CODE!
M VC
Pimcore Directory Layout
CONTROLLER
VIEW
views/Content/portal.html.twig: <div class="my-html-block"> {{ pimcore_image('mugshot') }} {{ pimcore_textarea('wanted') }} <div>
<?php # app/Resources/views/Blog/list.html.php ?> <html> <body> <h1>List</h1> <h2><?= $this->input("headline"); ?></h2>
</body> </html>
Image source: https://www.pimcore.org/
<?php # src/AppBundle/Controller/BlogController.php: # [..] class BlogController extends FrontendController {
public function detailAction(Request $request) { $id = $request->get('id'); $article = BlogArticle::getById($id); $this->view->article = $article; } }
<?php namespace AppBundle\Controller; class ContentController extends Controller { /** *
@Template("AppBundle:Content:portal.html.twig") -- Optional! * @Route("/news/portalpage") -- Optional! * * @return array */ public function portalAction(Request $request, array $templateVars) { $templateVars = $this->defaultAction($request, $templateVars); $templateVars['isPortal'] = true; return $templateVars; } }
Who Cares?
80.000+ Installationen
170+ Länder
None
None
None
None
None
None
None
Demo
"Pimcore ist die beste PHP Data Management Plattform" Christoph Lühr
None
Monolith at Newgrange cc-by-sa/2.0 - © Clint Mann - geograph.org.uk/p/4299750
None
Danke! Fragen? Christoph Lühr
[email protected]
[email protected]
@chluehr Slides license Attribution-NonCommercial-ShareAlike
3.0 http://creativecommons.org/licenses/by-nc-sa/3.0/