Your SlideShare is downloading. ×
WordPress per Startup
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

WordPress per Startup

2,323

Published on

Alcuni discutono se WordPress sia solo una piattaforma di blogging o un vero CMS; altri, se WordPress sia lo strumento giusto per sviluppare veri e propri applicativi web... ma se fai Startup, non hai …

Alcuni discutono se WordPress sia solo una piattaforma di blogging o un vero CMS; altri, se WordPress sia lo strumento giusto per sviluppare veri e propri applicativi web... ma se fai Startup, non hai tempo per queste discussioni: hai bisogno di costruire un Minimum Viable Product per validare la tua idea e sottoporla a potenziali utenti e investitori. In questo workshop, vedremo gli strumenti adatti per estendere struttura dati e interfacce utente di WordPress, e realizzare rapidamente e con semplicità applicativi web sofisticati.

1 Comment
4 Likes
Statistics
Notes
No Downloads
Views
Total Views
2,323
On Slideshare
0
From Embeds
0
Number of Embeds
9
Actions
Shares
0
Downloads
31
Comments
1
Likes
4
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. per Startup Costruisci il tuo MVP* in poche ore con WordPress * Minimum Viable Product (MVP) is a strategy used for fast and quantitative market testing of a product or product feature, popularized by Eric Ries for web applications [wikipedia]
  • 2. Quando «WordPress» e «MVP» si incontrano nella stessa frase… Will it scale? E il Data Model? Ma è un CMS!
  • 3. https://news.ycombinator.com/item?id=6097663
  • 4. L’MVP è solo la prima di una lunga serie di iterazioni In questa fase ci interessa solo una cosa: la velocità
  • 5. L’idea: un marketplace1
  • 6. http://www.localguiding.com/ L’idea: un marketplace per guide turistiche locali http://www.lookals.com/ http://www.showmearound.net/ 2
  • 7. Localtourguide.io - un marketplace per guide turistiche locali Gli elementi Blog News, Content marketing… Pages About, Why Join?... Tours Main feature Bookings ReviewsGuide Turisti 3
  • 8. Localtourguide.io - un marketplace per guide turistiche locali Map to WordPress Blog News, Content marketing… Pages About, Why Join?... Tours Main feature 4.1 Custom post type + Custom Fields Bookings Custom post type + Custom Fields Reviews Tour comments
  • 9. Localtourguide.io - un marketplace per guide turistiche locali Map to WordPress Guide Turisti 4.2 Post Author Custom roles Tours Main feature Guide Posts 2 PostsBookingsTuristi Posts 2 PostsBookingsTours Main feature
  • 10. Localtourguide.io - un marketplace per guide turistiche locali Strumenti5.1 Custom post types Custom fields Generators http://generatewp.com http://themergency.com/generators http://www.weareo3.com/wordp... Plugins http://wordpress.org/plugins/types/ … Plugins http://wordpress.o rg/plugins/advanc ed-custom-fields/ http://wordpress.org/plugins/types/ https://github.com/jaredatch/Custo m-Metaboxes-and-Fields-for- WordPress …
  • 11. Localtourguide.io - un marketplace per guide turistiche locali Strumenti Custom Roles Post and User connections Codex http://codex.wordpress.or g/Roles_and_Capabilities Plugins http://wordpress.org/plugins/user- role-editor/ … Plugins http://wordpress.org/plugi ns/posts-to-posts/ https://github.com/scribu/wp-posts- to-posts/wiki 5.3
  • 12. Codice: Custom post types + capabilities 6.1 Stiamo creando delle nuove «custom capabilities», che però nessun ruolo possiede. Occorre assegnarle almeno all’admin, altrimenti nessuno avrebbe i privilegi necessari per manipolare questo post type Da chiamare su init,. i.e. add_action( 'init', 'register_cpt_tour' );
  • 13. Codice: Custom post types + capabilities 6.2 register_cpt_caps aggiunge al ruolo administrator (ed eventuali altri) le custom capabilities associate ad un custom post type Ora quel custom post type risulta accessibile (almeno per gli administrator) N.B. Le operazioni sui ruoli sono da chiamare solo una volta, all’attivazione, perché sono persistenti, i.e. add_action( 'init', 'register_cr' ); function register_cr() { $registered = get_option('ltg_cr_created'); if( empty($registered) ) { register_cpt_caps('tour'); // altre operazioni sui ruoli add_option('ltg_cr_created', true); } }
  • 14. Codice: Custom post types + capabilities 6.3 register_cr_guide usa clone_role per creare un nuovo ruolo guide, basato su subscriber, e aggiunge il solo privilegio di creare e modificare (ma non pubblicare) i propri post di tipo tour clone_role crea un nuovo ruolo copiando uno dei ruoli esistenti in WP_Roles
  • 15. Codice: Custom post types + capabilities 6.4 Un ultima cosa: quando creiamo un nuovo tour, vogliamo poter selezionare come autore anche tutti gli user con ruolo guide
  • 16. Codice: Post and User Connections 6.5 …nel frattempo bbiamo creato anche un custom post type booking per gestire le prenotazioni Ogni booking dev’essere collegato a: • Uno o più partecipanti (user) • Il relativo tour Specifichiamo queste relazioni con l’api del plugin Posts 2 Posts
  • 17. Codice: Post and User Connections 6.6 Abbiamo creato anche un custom post type booking per gestire le prenotazioni Ogni booking dev’essere collegato a • Uno o più partecipanti (user) • Il relativo tour Specifichiamo queste relazioni con l’api del plugin Posts 2 Posts Ed ecco il risultato in /wp-admin
  • 18. Configurazione: Custom Fields 6.7 ACF ci permette di gestire i campi aggiunti con un’interfaccia grafica molto efficiente. Ecco il risultato in /wp-admin
  • 19. Cosa manca: gestione bookings 7 I custom post type booking non sono contenuti, e devono essere nascosti dal front end. Ma abbiamo comunque bisogno degli url per azioni di richiesta/accettazione/rifiuto delle prenotazioni Per manipolare i booking definiremo degli url virtuali, non legati a nessun post o pagina Il ciclo di vita della prenotazione potrà essere gestito mediante dei custom post status
  • 20. Il Backoffice 8 Un backoffice pronto all’uso e conosciuto da molte persone http://wp.smashingmagazine.com/2012/05/17/customize-wordpress-admin-easily/ • Il logo nella pagina di login • I loghi nell’header e footer dell’area amministrazione • Gli elementi della bacheca • Lo schema colori C’è spesso una componente «di facciata» in un MVP. In questi casi meglio personalizzare graficamente il backoffice
  • 21. Tutto il codice testato e funzionante? Metti la tua stellina sul repo di github! Lo pubblico se arrivamo almeno a 20 Promesso! 9 https://github.com/ptbello/localtourguide

×