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
PIM & Master Data Management with Pimcore 5 [en]
Search
Christoph Lühr
May 30, 2017
Technology
2
300
PIM & Master Data Management with Pimcore 5 [en]
Symfony User Group Berlin #sfugbln 2017-05-30
Christoph Lühr
May 30, 2017
Tweet
Share
More Decks by Christoph Lühr
See All by Christoph Lühr
Vektor-Suche & LLMs
chluehr
0
96
Search, Embeddings & Vector-DBs
chluehr
0
120
Reality Check: Automated Content Production at Enterprise Scale with Pimcore
chluehr
0
65
The how and why of getting Freelancers
chluehr
0
70
Content & Master Data Management with Pimcore
chluehr
1
660
Master Data Management with Pimcore
chluehr
0
200
Swoole in 5 Minutes [en]
chluehr
1
12k
Digital Transformation & Master Data Management with Pimcore 5
chluehr
0
240
LXD System Containers [en]
chluehr
0
340
Other Decks in Technology
See All in Technology
仕様は“書く”より“語る” - 分断を超えたチーム開発の実践 / 20251115 Naoki Takahashi
shift_evolve
PRO
1
800
なぜインフラコードのモジュール化は難しいのか - アプリケーションコードとの本質的な違いから考える
mizzy
52
16k
[mercari GEARS 2025] Building Foundation for Mercari’s Global Expansion
mercari
PRO
1
120
AI × クラウドで シイタケの収穫時期を判定してみた
lamaglama39
0
240
「もっと正確に、もっと効率的に」ANDPADの写真書き込み機能における、 現場の声を形にしたエンハンス
andpad
0
100
re:Invent完全攻略ガイド
junjikoide
1
330
JJUG CCC 2025 Fall バッチ性能!!劇的ビフォーアフター
hayashiyuu1
1
280
コミュニティと共に変化する 私とFusicの8年間
ayasamind
0
470
旧から新へ: 大規模ウェブクローラの Perl から Go への移行 / YAPC::Fukuoka 2025
motemen
3
870
はじめての OSS コントリビューション 〜小さな PR が世界を変える〜
chiroito
4
300
Post-AIコーディング時代のエンジニア生存戦略
shinoyu
0
280
Flutterにしてよかった?出前館アプリを2年運用して気づいたことを全部話します
demaecan
0
120
Featured
See All Featured
Measuring & Analyzing Core Web Vitals
bluesmoon
9
670
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
54k
Agile that works and the tools we love
rasmusluckow
331
21k
Typedesign – Prime Four
hannesfritz
42
2.9k
Mobile First: as difficult as doing things right
swwweet
225
10k
Scaling GitHub
holman
463
140k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1k
Visualization
eitanlees
150
16k
[RailsConf 2023] Rails as a piece of cake
palkan
57
6.1k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
31
2.7k
Producing Creativity
orderedlist
PRO
348
40k
BBQ
matthewcrist
89
9.9k
Transcript
Christoph Lühr @chluehr / Symfony User Group Berlin 2017-05-30 PIM
& Master Data Management with
None
SIN CE 2000
Image source: http://www.flickr.com/photos/robby_van_moor/5702589201/ CC BY-ND 2.0
None
(#) Internet
None
D⇒T Digital Transformation
~100 ^ Year
Unicode Character 'HAPPY PERSON RAISING ONE HAND' (U+1F64B)
None
"Systems, Data & Processes" Why MDM & PIM? Digital Transformation
BUSINESS Digital Transformation
Digital Transformation "Digitalization" Production Product Mgmt Sales Marketing IT IT
IT IT
Digital Transformation "Digitalization" Production Product Mgmt Sales Marketing IT IT
IT IT
Digital Transformation "Digitalization" Production Product Mgmt Sales Marketing IT IT
IT IT
None
None
None
System
SHOP ERP CRM
SHOP ERP CRM ?
SHOP ERP CRM Excel \\FS
PROCESSING
IMPORT EXPORT
IMPORT EXPORT API
IMPORT EXPORT FTP XML
A B C E D
? ? ? ? ? ?
ERP ?
SHOP ?
SHOP SHOP SHOP ?
?
Single SourcE Of Truth
Master Data Management System
Benefits!
MDM
IN OUT OUT IN MDM MDM
Newsletter MDM Shop Print Catalog Marketplace . . . "Omni-Channel"
Criteria Requirements
Image source: http://icons8.com/web-app/1475/Database / Document by useiconic.com from the Noun
Project
Options?
Specialized (PIM)
None
None
None
None
Snail by Juraj Sedlák from the Noun Project
CMS (with Extensions)
None
None
None
None
None
(!fun) clock by Ananth from the Noun Project
Framework (Components)
None
None
None
$$$ clock by Ananth from the Noun Project
None
Integrated System Dev. Framework
Integrated System Dev. Framework Platform
Integrated System Dev. Framework
Image source: https://instagram.com/p/wse6D4LtB1/
None
GPL v3
7
None
Image source: http://symfony.com/logo
None
Walk-Thru' (Demo)
None
+
None
None
Image source: https://www.flickr.com/photos/127497725@N02/15733977724
+
None
None
None
Pipes Processing Images
None
None
None
None
WANTED WANTED
... Tags, IPTC Meta, Properties / Relations
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/
M VC
views/Content/portal.html.twig: <div class="my-html-block"> {{ pimcore_image('mugshot') }} {{ pimcore_textarea('wanted') }} <div>
Image source: https://www.pimcore.org/
<?php class ContentController { /** * Optional: * @Template("AppBundle:Content:portal.html.twig") *
@Route("/news/portalpage") */ public function portalAction( ) { // custom code: // - retrieve data // - .. // - populate view } }
<?php namespace AppBundle\Controller; use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route; use Sensio\Bundle\FrameworkExtraBundle\Configuration\Template; use Symfony\Bundle\FrameworkBundle\Controller\Controller; use
Symfony\Component\HttpFoundation\Request; class ContentController extends Controller { /** * @Template("AppBundle:Content:portal.html.twig") -- Optional! * @Route("/news/portalpage") -- Optional! * * @param Request $request * @param array $templateVars * @return array */ public function portalAction(Request $request, array $templateVars) { $templateVars = $this->defaultAction($request, $templateVars); $templateVars['isPortal'] = true; return $templateVars; } }
... Inheritance, Multi-Site, ...
Image source: http://icons8.com/web-app/1475/Database
+
None
None
None
+
None
None
None
40+ Field Types
None
None
None
None
Versions Diffs / Schedules / ...
None
... Variants, Custom Views, Inheritance, Batch & Grid-Edit, ...
None
<?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"); ...
$results = Object\Person::getByWeight(75);
Image source: http://www.flickr.com/photos/rietje/76566707/ CC BY 2.0
Image source: http://icons8.com/web-app/1475/Database / Document by useiconic.com from the Noun
Project
Image source: http://icons8.com/web-app/1475/Database / Document by useiconic.com from the Noun
Project ~ 80.000 Installations
Image source: http://icons8.com/web-app/1475/Database / Document by useiconic.com from the Noun
Project Case Studies
Image source: http://icons8.com/web-app/1475/Database / Document by useiconic.com from the Noun
Project 2017-09 Release V5.0
Image source: http://icons8.com/web-app/1475/Database / Document by useiconic.com from the Noun
Project
Thanks! Questions? Christoph Lühr
[email protected]
[email protected]
@chluehr Slides license Attribution-NonCommercial-ShareAlike
3.0 http://creativecommons.org/licenses/by-nc-sa/3.0/
• Pimcore https://www.pimcore.org/en https://www.pimcore.org/en/resources/try [Demos] • Standalone Docker Demo using
latest Pimcore 5 https://hub.docker.com/r/christophluehr/docker-pimcore-demo- standalone/
Image source: http://icons8.com/web-app/1475/Database / Document by useiconic.com from the Noun
Project User Group Berlin June 28th
None