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
590
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
79
Search, Embeddings & Vector-DBs
chluehr
0
99
Reality Check: Automated Content Production at Enterprise Scale with Pimcore
chluehr
0
58
The how and why of getting Freelancers
chluehr
0
67
Master Data Management with Pimcore
chluehr
0
190
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
230
LXD System Containers [en]
chluehr
0
320
Other Decks in Programming
See All in Programming
Cursor Meetup Tokyo ゲノミクスとCursor: 進化と制約のあいだ
koido
2
980
eBPFを用いたAIネットワーク監視システム論文の実装 / eBPF Japan Meetup #4
yuukit
3
750
Effect の双対、Coeffect
yukikurage
5
1.4k
単体テストの始め方/作り方
toms74209200
0
430
「ElixirでIoT!!」のこれまでとこれから
takasehideki
0
350
AIエージェントによるテストフレームワーク Arbigent
takahirom
0
370
型付きアクターモデルがもたらす分散シミュレーションの未来
piyo7
0
760
Cline指示通りに動かない? AI小説エージェントで学ぶ指示書の書き方と自動アップデートの仕組み
kamomeashizawa
1
450
統一感のある Go コードを生成 AI の力で手にいれる
otakakot
0
3k
iOSアプリ開発で 関数型プログラミングを実現する The Composable Architectureの紹介
yimajo
2
200
データベースコネクションプール(DBCP)の変遷と理解
fujikawa8
1
250
FormFlow - Build Stunning Multistep Forms
yceruto
1
160
Featured
See All Featured
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.9k
A Modern Web Designer's Workflow
chriscoyier
693
190k
The Art of Programming - Codeland 2020
erikaheidi
54
13k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
The Power of CSS Pseudo Elements
geoffreycrofte
77
5.8k
4 Signs Your Business is Dying
shpigford
184
22k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
How to train your dragon (web standard)
notwaldorf
92
6.1k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.3k
Automating Front-end Workflow
addyosmani
1370
200k
Rebuilding a faster, lazier Slack
samanthasiow
81
9k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
130
19k
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/