WordPress per Startup
-
Upload
piero-bellomo -
Category
Documents
-
view
2.435 -
download
0
description
Transcript of WordPress per Startup
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]
Quando «WordPress» e «MVP» si incontrano nella stessa frase…
Will it scale?
E il Data Model?
Ma è un CMS!
https://news.ycombinator.com/item?id=6097663
L’MVP è solo la prima di una lunga serie di iterazioni
In questa fase ci interessa solo una cosa: la velocità
L’idea: un marketplace1
http://www.localguiding.com/
L’idea: un marketplaceper guide turistiche locali
http://www.lookals.com/
http://www.showmearound.net/
2
Localtourguide.io - un marketplace per guide turistiche locali
Gli elementi
BlogNews, Content
marketing…
PagesAbout, Why Join?...
ToursMain feature
Bookings ReviewsGuide
Turisti
3
Localtourguide.io - un marketplace per guide turistiche locali
Map to WordPress
BlogNews, Content
marketing…
PagesAbout, Why Join?...
ToursMain feature
4.1
Custom post type + Custom Fields
Bookings Custom post type + Custom Fields
Reviews Tour comments
Localtourguide.io - un marketplace per guide turistiche locali
Map to WordPress
Guide Turisti
4.2
Post Author
Custom roles
ToursMain feature
Guide
Posts 2 PostsBookingsTuristi
Posts 2 PostsBookingsToursMain feature
Localtourguide.io - un marketplace per guide turistiche locali
Strumenti5.1
Custom post types
Custom fields
Generatorshttp://generatewp.com
http://themergency.com/generatorshttp://www.weareo3.com/wordp...
Pluginshttp://wordpress.org/plugins/types/
…
Pluginshttp://wordpress.org/plugins/advanced-custom-fields/
http://wordpress.org/plugins/types/ https://github.com/jaredatch/Custom-Metaboxes-and-Fields-for-WordPress …
Localtourguide.io - un marketplace per guide turistiche locali
Strumenti
Custom Roles
Post and User connections
Codexhttp://codex.wordpress.org/Roles_and_Capabilities
Pluginshttp://wordpress.org/plugins/user-role-editor/
…
Pluginshttp://wordpress.org/plugins/posts-to-posts/
https://github.com/scribu/wp-posts-to-posts/wiki
5.3
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' );
Codice: Custom post types + capabilities
6.2
register_cpt_caps aggiunge al ruolo administrator (ed eventuali altri)le custom capabilities associatead 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); }}
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 ruolocopiando uno dei ruoli esistenti in WP_Roles
Codice: Custom post types + capabilities
6.4
Un ultima cosa: quando creiamo un nuovo tour, vogliamo poter selezionare come autoreanche tutti gli user con ruolo guide
Codice: Post and User Connections
6.5…nel frattempo bbiamo creato ancheun custom post type bookingper 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
Codice: Post and User Connections
6.6Abbiamo creato anche uncustom post type bookingper 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
Configurazione: Custom Fields
6.7ACF ci permette di gestire i campi aggiunti con un’interfaccia grafica molto efficiente.
Ecco il risultato in /wp-admin
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
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
Tutto il codice testato e funzionante?Metti la tua stellina sul repo di github!Lo pubblico se arrivamo almeno a 20Promesso!
9
https://github.com/ptbello/localtourguide