Top Banner
anatomia di StarterTheme PrestaShop 1.7
25

Anatomia di starter theme

Jan 19, 2017

Download

Internet

Bwlab
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Anatomia di starter theme

anatomia di StarterThemePrestaShop 1.7

Page 2: Anatomia di starter theme

Luigi Massa - PrestaShop Ambassador Torino - [email protected]

2 parole su di meesperto di processi IT

SAP professional, Symfony developer, PrestaShop professional

PrestaShop Ambassador da gennaio 2016

ex manager GDG Torino

twitter: businessweblabsite: bwlab.itlinkedin: linkedin.com/in/lmassa

Page 3: Anatomia di starter theme

strumenti

github: repository, branch and pull request

npm: npm is the package manager for JavaScript. Find, share, and reuse packages of code from hundreds of thousands of developers — and assemble them in powerful new ways.

stylus-lang: EXPRESSIVE, DYNAMIC, ROBUST CSS

Yaml: yet another markup language

Page 4: Anatomia di starter theme

scaricare starter theme

repository in github: https://github.com/PrestaShop

starter theme:https://github.com/PrestaShop/StarterTheme

Page 5: Anatomia di starter theme

folder structure

● config: file di configurazione template

● template: file tpl● _dev: file css stylus● assets: file compilati css, js e

immagni● modules: allow you to override

templates for modules● plugins: contains the Smarty

extensions required by the theme, if any

Page 6: Anatomia di starter theme

block elements permetteno di costruire una gerarchia ereditaria e sovrascrivere blocchi di template facilmente

template smarty

Page 7: Anatomia di starter theme

risorsa concettuale

smarty è simile a twig per la gestione dei blocchi, degli include e dell’ereditarietà

{block <name>}...{/endblock}{extends file='<tpl name>'}{include file='<tpl name>' <var>=$varname}

Page 8: Anatomia di starter theme

block (twig)

Page 9: Anatomia di starter theme

extends

Page 10: Anatomia di starter theme

include

Page 11: Anatomia di starter theme

rapida introduzione sull’organizzazione dello starter thee

tpl start themestruttura

Page 12: Anatomia di starter theme

struttura starter theme home

Page 13: Anatomia di starter theme

struttura altre pagine

Page 14: Anatomia di starter theme

struttura layout layout-both-columns.tpl

Page 15: Anatomia di starter theme

usando sylus è possibile creare una struttura semplificata dei css sfruttando variabili ed ereditarietà e compilando per ottenere i css

csscompiling

Page 16: Anatomia di starter theme

alcuni comandi

npm install: installa le dipendenze npm per la compilazione; sotto _dev

da lanciare sotto _dev, npm run:

● watch: compila i file stylus real time● build: compila i file stylus e li minimizza in un unico in assets/css● build-wach: i precedenti uniti

npm run legge il file package.json

Page 17: Anatomia di starter theme

npm run watch

controlla live le modifiche ai file .styl

compila live in css

inserisce in assets/css/dev.css

Page 18: Anatomia di starter theme

exemple: start from _dev/dev.styl

// Colorsbody-background-color = whiteborder-color = grey….

@import "_mixins.styl"…..

#checkout-cart-summary float right width 30%

gestisce i colori del tema grafico con delle variabili

importa altri file stylus

definisce lo stile della classe su id checkout-cart-summary e

Page 19: Anatomia di starter theme

http://www.stylus-lang.com

Page 20: Anatomia di starter theme

esempio

Page 21: Anatomia di starter theme

Configurazione theme.yml

Lo Starter Theme prevede un file di configurazione yml

Page 22: Anatomia di starter theme

config/theme.yml

Il file riporta la configurazione del tema grafico: chi l'ha creato, gli hook abilitati etc…

La descrizione di tutti i parametri di configurazione si trova su github.com

Page 23: Anatomia di starter theme

contenuto della configurazione

nome template = folder name

versione, autore, compatibilità, dimensione delle immagini, tipi di layout

moduli attivati e disattivati di default in fase di installazione template, hook gestiti con i relativi moduli attivati

Page 24: Anatomia di starter theme
Page 25: Anatomia di starter theme