szépségszalon a vertikális végtelenhez – drupal 8 sminkelés

56
Szépségszalon a Vertikális Végtelenhez Drupal 8 sminkelés

Upload: hajas-tamas

Post on 17-Jul-2015

139 views

Category:

Internet


0 download

TRANSCRIPT

Page 1: Szépségszalon a Vertikális Végtelenhez – Drupal 8 sminkelés

Szépségszalon a Vertikális Végtelenhez

Drupal 8 sminkelés

Page 2: Szépségszalon a Vertikális Végtelenhez – Drupal 8 sminkelés

Hajas TamásDrupal tanácsadó Integral Vision Kft

Page 3: Szépségszalon a Vertikális Végtelenhez – Drupal 8 sminkelés

bitangjo.info

Drupal 7sites/all/themes/bitangjo/

Page 4: Szépségszalon a Vertikális Végtelenhez – Drupal 8 sminkelés

bitangjo.info.ymlthemes/bitangjo/

Drupal 8

bitangjo.info

Drupal 7sites/all/themes/bitangjo/

Page 5: Szépségszalon a Vertikális Végtelenhez – Drupal 8 sminkelés

kulcs_neve: érték

kettőspont ':' (nem egyenlőségjel)

# komment:

kettőskereszt '#' (nem pontossvessző)

struktúra:

behúzással jelezve

Change record: https://drupal.org/node/1935708

YAML szintaktika

Page 6: Szépségszalon a Vertikális Végtelenhez – Drupal 8 sminkelés

!

description: Ez egy bitang jó smink! :)

version: 1.0

!

!

!

!

package: custom

screenshot: bitangjo.png

Creating a D8 sub-theme: https://drupal.org/node/2165673

type: theme

name: Bitangjó smink

!

!

core: 8.x

base theme: classy

# engine: twig

bitangjo.info.yml

Page 7: Szépségszalon a Vertikális Végtelenhez – Drupal 8 sminkelés

https://www.drupal.org/node/2289511

A „Banán egyezség”

Page 8: Szépségszalon a Vertikális Végtelenhez – Drupal 8 sminkelés

Forrás: https://github.com/sqndr/d8-theming-guide/blob/master/img/theme-overview.png

Page 9: Szépségszalon a Vertikális Végtelenhez – Drupal 8 sminkelés

Forrás: https://github.com/sqndr/d8-theming-guide/blob/master/img/custom-theme.png

Page 10: Szépségszalon a Vertikális Végtelenhez – Drupal 8 sminkelés

bitangjo.info.yml

stylesheets: all: - css/base.css screen: - css/components.css print: - css/print.css

Page 11: Szépségszalon a Vertikális Végtelenhez – Drupal 8 sminkelés

# Stíluslap felülbírálása

!

!

# Stíluslap „etávolítása”

Change record: https://drupal.org/node/1876600

stylesheets-override:

- normalize.css

!

!

stylesheets-remove:

- jquery.ui.dialog.css

bitangjo.info.yml

Page 12: Szépségszalon a Vertikális Végtelenhez – Drupal 8 sminkelés

SMACSS + BEM

CSS coding standards: https://drupal.org/node/1886770

Drupal 8

Page 13: Szépségszalon a Vertikális Végtelenhez – Drupal 8 sminkelés

• Base • Layout • Module • State • Theme

SMACSS CSS fájl-struktúra

Page 14: Szépségszalon a Vertikális Végtelenhez – Drupal 8 sminkelés

• Base • Layout • Module • State • Theme

SMACSS-szerű CSS fájl-struktúra

Page 15: Szépségszalon a Vertikális Végtelenhez – Drupal 8 sminkelés

• Base • Layout • Component Module • State • Theme

SMACSS-szerű CSS fájl-struktúra

Page 16: Szépségszalon a Vertikális Végtelenhez – Drupal 8 sminkelés

• Base • Layout • Component Module

• State • Theme

SMACSS-szerű CSS fájl-struktúra

Page 17: Szépségszalon a Vertikális Végtelenhez – Drupal 8 sminkelés

base • elements.css • typography.css layout • layout.css • node-add.css • …

components • buttons.css • buttons.theme.css • … theme • install-page.css • appearance-

page.css

SMACSS-szerű CSS fájl-struktúra (smink)

Forrás: seven theme

Page 18: Szépségszalon a Vertikális Végtelenhez – Drupal 8 sminkelés

• module_name.module.css (layout, component, state)

• module_name.theme.css • module_name.admin.css

(layout, component, state) • module_name.admin.theme.css • module_name.base.css

SMACSS-szerű CSS fájl-struktúra (modul)

Page 19: Szépségszalon a Vertikális Végtelenhez – Drupal 8 sminkelés

<div class="flower__bed"> <div class="flower flower--tulip is-pollinating"> <div class="flower__petals"> <div class="flower__face"></div> </div> <div class="flower__stem"> <div class="flower__leaves"></div> </div> </div> </div>

John Albin: Managing complex projects with design components

BEM

Page 20: Szépségszalon a Vertikális Végtelenhez – Drupal 8 sminkelés

# Smink régiók

Forrás: seven.info.yml

regions:

content: Content

help: Help

page_top: 'Page top'

page_bottom: 'Page bottom'

sidebar_first: 'First sidebar'

regions_hidden:

- sidebar_first

bitangjo.info.yml

Page 21: Szépségszalon a Vertikális Végtelenhez – Drupal 8 sminkelés

hook_library_info()

Drupal 7

Page 22: Szépségszalon a Vertikális Végtelenhez – Drupal 8 sminkelés

bitangjo.libraries.yml

Drupal 8

hook_library_info()

Drupal 7

Change record: https://drupal.org/node/2201089

Page 23: Szépségszalon a Vertikális Végtelenhez – Drupal 8 sminkelés

base: version: 1.x js: js/bitangjo.js: {} dependencies: - core/drupal - core/jquery - core/jquery.once

Forrás: https://github.com/sqndr/d8-theming-guide

bitangjo.libraries.yml

Page 24: Szépségszalon a Vertikális Végtelenhez – Drupal 8 sminkelés

Forrás: https://github.com/sqndr/d8-theming-guide

bitangjo.libraries.yml

picker: version: 3.1.0 remote: http://formstone.it/components/picker js: lib/picker/js/jquery.fs.picker.js: {} css: theme: lib/picker/css/jquery.fs.picker.css: {} dependencies: - core/jquery

Page 25: Szépségszalon a Vertikális Végtelenhez – Drupal 8 sminkelés

bitangjo.info.yml*

libraries: - bitangjo/base

*Hol a picker? Nemsokára kiderül… ;)

Page 26: Szépségszalon a Vertikális Végtelenhez – Drupal 8 sminkelés

Breakpoints

Drupal 8

Page 27: Szépségszalon a Vertikális Végtelenhez – Drupal 8 sminkelés

bartik.mobile: label: mobile mediaQuery: '(min-width: 0px)' weight: 0 multipliers: - 1x bartik.narrow: label: narrow mediaQuery: 'all and (min-width: 560px) and (max-width: 850px)' weight: 1 multipliers: - 1x bartik.wide: label: wide mediaQuery: 'all and (min-width: 851px)' weight: 2 multipliers: - 1x

bartik.breakpoints.yml

Page 28: Szépségszalon a Vertikális Végtelenhez – Drupal 8 sminkelés

Breakpoints » Responsive images

• Responsive images modul

• Mapping beállítása

• Breakpoint group

• Breakpoint – Image style

Page 29: Szépségszalon a Vertikális Végtelenhez – Drupal 8 sminkelés
Page 30: Szépségszalon a Vertikális Végtelenhez – Drupal 8 sminkelés

Breakpoints » Responsive images

• Responsive images modul

• Mapping beállítása

• Breakpoint group

• Breakpoint – Image style

• RI image formatter

• Mapping választása

Page 31: Szépségszalon a Vertikális Végtelenhez – Drupal 8 sminkelés

Képstílusok a sminkben

Drupal 8

Page 32: Szépségszalon a Vertikális Végtelenhez – Drupal 8 sminkelés

• Képstílus létrehozása (admin felület)/admin/config/media/image-styles/add

• Képstílus exportja admin felületről/admin/config/development/configuration/single/export

• Exportált YAML a sminkbebitangjo/config/install/image.style.style_name.yml

Képstílusok a sminkben

Page 33: Szépségszalon a Vertikális Végtelenhez – Drupal 8 sminkelés

uuid: 311e7c58-c64a-4c9e-b544-68b12b560e36 langcode: en status: true dependencies: { } name: thumbnail label: 'Thumbnail (100×100)' effects: 1cfec298-8620-4749-b100-ccb6c4500779: uuid: 1cfec298-8620-4749-b100-ccb6c4500779 id: image_scale weight: 0 data: width: 100 height: 100 upscale: false third_party_settings: { }

image.style.thumbnail.yml

Page 34: Szépségszalon a Vertikális Végtelenhez – Drupal 8 sminkelés

*.tpl.php

Drupal 7

Page 35: Szépségszalon a Vertikális Végtelenhez – Drupal 8 sminkelés

*.html.twig

Drupal 8

*.tpl.php

Drupal 7

Page 36: Szépségszalon a Vertikális Végtelenhez – Drupal 8 sminkelés

Biztonságos

Gyors

Érthető

PHPTemplate & Twig comparison: https://drupal.org/node/1918824

*.html.twig

Page 37: Szépségszalon a Vertikális Végtelenhez – Drupal 8 sminkelés

Twig coding standards: https://drupal.org/node/1823416

*.html.twig változó

{{ page.primary_menu }}

Page 38: Szépségszalon a Vertikális Végtelenhez – Drupal 8 sminkelés

Twig coding standards: https://drupal.org/node/1823416

*.html.twig filter

{{ content|without('links') }}

Page 39: Szépségszalon a Vertikális Végtelenhez – Drupal 8 sminkelés

Twig coding standards: https://drupal.org/node/1823416

{{ 'Home'|t }}

*.html.twig filter

Page 40: Szépségszalon a Vertikális Végtelenhez – Drupal 8 sminkelés

Twig coding standards: https://drupal.org/node/1823416

*.html.twig fordítás

{% trans %} Submitted by {{ author_name|passthrough }} on {{ date|passthrough }} {% endtrans %}

Page 41: Szépségszalon a Vertikális Végtelenhez – Drupal 8 sminkelés

Twig coding standards: https://drupal.org/node/1823416

*.html.twig komment

{# Kód komment #}

Page 42: Szépségszalon a Vertikális Végtelenhez – Drupal 8 sminkelés

Twig coding standards: https://drupal.org/node/1823416

*.html.twig if funkció

{% if site_slogan %} <div class="site-slogan"> {{ site_slogan }} </div> {% endif %}

Page 43: Szépségszalon a Vertikális Végtelenhez – Drupal 8 sminkelés

Twig coding standards: https://drupal.org/node/1823416

*.html.twig for loop

<ul> {% for user in users %} <li> {{ user.username }} </li> {% endfor %} </ul>

Page 44: Szépségszalon a Vertikális Végtelenhez – Drupal 8 sminkelés

Twig coding standards: https://drupal.org/node/1823416

*.html.twig Twig változó definiálása

{% set foo="bar" %}

{{ foo }}

Page 45: Szépségszalon a Vertikális Végtelenhez – Drupal 8 sminkelés

Twig coding standards: https://drupal.org/node/1823416

*.html.twig Twig változó definiálása

{% set classes = [ 'admin-list', compact ? 'compact', ] %} !

… !<ul{{ attributes.addClass(classes) }}>

Page 46: Szépségszalon a Vertikális Végtelenhez – Drupal 8 sminkelés

Twig debug

parameters: twig.config: debug: true auto_reload: true cache: false

sites/default/services.yml

Page 47: Szépségszalon a Vertikális Végtelenhez – Drupal 8 sminkelés

Twig debug

Page 48: Szépségszalon a Vertikális Végtelenhez – Drupal 8 sminkelés

Twig debug

$ cp example.settings.local.php default/settings.local.php

if (file_exists(__DIR__ . '/settings.local.php')) { include __DIR__ . '/settings.local.php'; }

…és a settings.php-ben:

Page 49: Szépségszalon a Vertikális Végtelenhez – Drupal 8 sminkelés

template.php

Drupal 7

Page 50: Szépségszalon a Vertikális Végtelenhez – Drupal 8 sminkelés

bitangjo.theme

Drupal 8

template.php

Drupal 7

Page 51: Szépségszalon a Vertikális Végtelenhez – Drupal 8 sminkelés

Change record-ok: https://www.drupal.org/node/2352319, https://drupal.org/node/2169605

bitangjo.theme

/** * Implements hook_form_FORM_ID_alter(). */ function bitangjo_form_recipe_alter(&$form, &$form_state) { ! // Use Picker to replace default checkboxes and radios. $form['#attached']['library'][] = 'bitangjo/picker'; }

Page 52: Szépségszalon a Vertikális Végtelenhez – Drupal 8 sminkelés

Headless Drupal

Drupal 8

Page 53: Szépségszalon a Vertikális Végtelenhez – Drupal 8 sminkelés

!⬇

Böngésző Weboldal megjelnítése

Headless Drupal

Adatbázis

⬇ PHP

„adatszolgáltatás”!⬍ JS

adatfeldolgozás, HTML render

Page 54: Szépségszalon a Vertikális Végtelenhez – Drupal 8 sminkelés
Page 55: Szépségszalon a Vertikális Végtelenhez – Drupal 8 sminkelés

• https://drupal.org/theme-guide/8

• Change records (theme): http://j.mp/1qFSKXq

• http://d8.sqndr.com

• https://amsterdam2014.drupal.org/session/twig-and-new-drupal-8-theme-system

• Twig Coding Standards: https://drupal.org/node/1823416

• CSS CS: https://drupal.org/node/1886770

• JS CS: https://drupal.org/node/172169

további infók

Page 56: Szépségszalon a Vertikális Végtelenhez – Drupal 8 sminkelés

Tamás HajasDrupal consultant Integral Vision Ltd integralvision.hu about.me/tamashajas