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
750
1
Share
Content & Master Data Management with Pimcore
SymfonyLive Berlin 2018 [de]
Christoph Lühr
October 26, 2018
More Decks by Christoph Lühr
See All by Christoph Lühr
Vektor-Suche & LLMs
chluehr
0
130
Search, Embeddings & Vector-DBs
chluehr
0
140
Reality Check: Automated Content Production at Enterprise Scale with Pimcore
chluehr
0
86
The how and why of getting Freelancers
chluehr
0
79
Master Data Management with Pimcore
chluehr
0
220
Swoole in 5 Minutes [en]
chluehr
1
12k
PIM & Master Data Management with Pimcore 5 [en]
chluehr
2
320
Digital Transformation & Master Data Management with Pimcore 5
chluehr
0
250
LXD System Containers [en]
chluehr
0
370
Other Decks in Programming
See All in Programming
AIエージェントで業務改善してみた
taku271
0
430
AIと共にエンジニアとPMの “二刀流”を実現する
naruogram
0
130
テレメトリーシグナルが導くパフォーマンス最適化 / Performance Optimization Driven by Telemetry Signals
seike460
PRO
2
220
Xdebug と IDE による デバッグ実行の仕組みを見る / Exploring-How-Debugging-Works-with-Xdebug-and-an-IDE
shin1x1
0
340
存在論的プログラミング: 時間と存在を記述する
koriym
5
770
Geminiをパートナーに神社DXシステムを個人開発した話(いなめぐDX 開発振り返り)
fujiba
0
140
VueエンジニアがReactを触って感じた_設計の違い
koukimiura
0
150
年間50登壇、単著出版、雑誌寄稿、Podcast出演、YouTube、CM、カンファレンス主催……全部やってみたので面白さ等を比較してみよう / I’ve tried them all, so let’s compare how interesting they are.
nrslib
4
700
Coding at the Speed of Thought: The New Era of Symfony Docker
dunglas
0
4.5k
Laravel Nightwatchの裏側 - Laravel公式Observabilityツールを支える設計と実装
avosalmon
1
310
一度始めたらやめられない開発効率向上術 / Findy あなたのdotfilesを教えて!
k0kubun
4
2.8k
今こそ押さえておきたい アマゾンウェブサービス(AWS)の データベースの基礎 おもクラ #6版
satoshi256kbyte
1
230
Featured
See All Featured
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
200
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
160
brightonSEO & MeasureFest 2025 - Christian Goodrich - Winning strategies for Black Friday CRO & PPC
cargoodrich
3
670
エンジニアに許された特別な時間の終わり
watany
106
240k
Why Our Code Smells
bkeepers
PRO
340
58k
RailsConf 2023
tenderlove
30
1.4k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
210
Thoughts on Productivity
jonyablonski
76
5.1k
Test your architecture with Archunit
thirion
1
2.2k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
9k
Statistics for Hackers
jakevdp
799
230k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
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/