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
290
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
62
Search, Embeddings & Vector-DBs
chluehr
0
82
Reality Check: Automated Content Production at Enterprise Scale with Pimcore
chluehr
0
47
The how and why of getting Freelancers
chluehr
0
62
Content & Master Data Management with Pimcore
chluehr
1
560
Master Data Management with Pimcore
chluehr
0
180
Swoole in 5 Minutes [en]
chluehr
1
12k
Digital Transformation & Master Data Management with Pimcore 5
chluehr
0
220
LXD System Containers [en]
chluehr
0
290
Other Decks in Technology
See All in Technology
頻繁リリース × 高品質 = 無理ゲー? いや、できます!/20250306 Shoki Hyo
shift_evolve
0
140
コード品質向上で得られる効果と実践的取り組み
ham0215
1
190
Compose MultiplatformにおけるiOSネイティブ実装のベストプラクティス
enomotok
1
180
DIってなんだか難しい? 依存という概念を「使う・使われる」 という言葉で整理しよう
akinoriakatsuka
1
750
AI・LLM事業部のSREとタスクの自動運転
shinyorke
PRO
0
270
移行できそうでやりきれなかった 10年超えのシステムを葬るための戦略
ryu955
2
180
スケールアップ企業のQA組織のバリューを最大限に引き出すための取り組み
tarappo
4
780
caching_sha2_passwordのはなし
boro1234
0
160
LINE API Deep Dive Q1 2025: Unlocking New Possibilities
linedevth
1
140
バックエンドエンジニアによるフロントエンドテスト拡充の具体的手法
kinosuke01
1
590
React Server Componentは 何を解決し何を解決しないのか / What do React Server Components solve, and what do they not solve?
kaminashi
5
1k
バクラクでのSystem Risk Records導入による変化と改善の取り組み/Changes and Improvement Initiatives Resulting from the Implementation of System Risk Records
taddy_919
0
190
Featured
See All Featured
GraphQLの誤解/rethinking-graphql
sonatard
69
10k
Why Our Code Smells
bkeepers
PRO
336
57k
Rails Girls Zürich Keynote
gr2m
94
13k
Speed Design
sergeychernyshev
28
850
Optimizing for Happiness
mojombo
377
70k
Embracing the Ebb and Flow
colly
84
4.6k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.4k
The World Runs on Bad Software
bkeepers
PRO
67
11k
Fontdeck: Realign not Redesign
paulrobertlloyd
83
5.4k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.4k
Intergalactic Javascript Robots from Outer Space
tanoku
270
27k
Into the Great Unknown - MozCon
thekraken
35
1.7k
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 luehr@r-pentomino.de christoph.luehr@basilicom.de @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