Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Developing with Pimcore

Developing with Pimcore

bephpug 2015-03

Christoph Lühr

March 03, 2015
Tweet

More Decks by Christoph Lühr

Other Decks in Programming

Transcript

  1. Christoph Lühr
    @chluehr / bephpug 2015
    "Mad Men's Guide to Fun & Profit"
    Developing with Pimcore

    View Slide

  2. "¡Andale! ¡Andale! ¡Arriba!
    ¡Arriba! ¡Yii-hah!"

    View Slide

  3. View Slide

  4. basilicom

    View Slide

  5. basilicom
    SIN
    CE
    2000

    View Slide

  6. View Slide

  7. Image source: http://www.flickr.com/photos/robby_van_moor/5702589201/ CC BY-ND 2.0

    View Slide

  8. (#)
    Internet

    View Slide

  9. View Slide

  10. ~70
    ^
    Year

    View Slide

  11. Unicode Character 'HAPPY PERSON RAISING ONE HAND' (U+1F64B)

    View Slide

  12. CMS
    (Extensions)

    View Slide

  13. View Slide

  14. fucktions.php

    View Slide

  15. View Slide

  16. tt_news*

    View Slide

  17. View Slide

  18. ...

    View Slide

  19. (!fun)

    View Slide

  20. Framework
    (Components)

    View Slide

  21. View Slide

  22. View Slide

  23. View Slide

  24. (!$$$)

    View Slide

  25. CMS
    (Extensions)
    Framework
    (Components)

    View Slide

  26. integrated
    decoupled

    View Slide

  27. Image source: https://instagram.com/p/wse6D4LtB1/

    View Slide

  28. View Slide

  29. View Slide

  30. View Slide

  31. Image source: http://framework.zend.com/images/logos/zf-logo-mark.png

    View Slide

  32. View Slide

  33. BSD

    View Slide

  34. Features

    View Slide

  35. View Slide

  36. Image source: https://www.flickr.com/photos/[email protected]/15733977724

    View Slide

  37. Image source: https://www.pimcore.org/

    View Slide

  38. View Slide

  39. View Slide

  40. View Slide

  41. WANTED
    WANTED

    View Slide

  42. View Slide

  43. MVC

    View Slide

  44. class PersonController extends Action
    {
    public function detailAction()
    {
    }
    }

    View Slide

  45. /person/detail.php:

    = $this->image("mugshot") ?>
    = $this->wysiwyg("wanted") ?>

    View Slide

  46. Image source: https://www.pimcore.org/

    View Slide

  47. Image source: http://icons8.com/web-app/1475/Database

    View Slide

  48. View Slide

  49. Image source: http://blog.feixen.de/gefunden-im-web/fliesentische/

    View Slide

  50. ORM ?>

    View Slide

  51. // Object creation
    $person = Object\Person::create(array(
    'name' => 'Chris',
    'description' => 'Fast talker'
    ));
    $person->setWeight(75);
    $person->save();

    View Slide

  52. // Object retrieval
    $personList = new Object\Person\Listing();
    $personList>setOrderKey("weight");
    $personList>setOrder("DESC");
    ...
    $results = Object\Person::getByWeight(75);

    View Slide

  53. Image source: http://www.flickr.com/photos/rietje/76566707/ CC BY 2.0

    View Slide

  54. Trashcan
    & Undo

    View Slide

  55. Versioning

    View Slide

  56. Scheduled
    Publishing

    View Slide

  57. Variants
    & Inheritance

    View Slide

  58. Role-based
    Views

    View Slide

  59. i18n / l10n

    View Slide

  60. composer

    View Slide

  61. Custom
    Properties

    View Slide

  62. Multi-Site

    View Slide

  63. View Slide

  64. Who & Where

    View Slide

  65. Demo

    View Slide

  66. View Slide

  67. View Slide

  68. 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/

    View Slide

  69. ● Pimcore
    http://www.pimcore.org/

    View Slide