Álvaro Gómez Velasco @mrfoxtalbotwww.mrfoxtalbot.com/wcsantander
Álvaro Gómez Velasco @mrfoxtalbotwww.mrfoxtalbot.com/wcsantander
Gestión de información con WordPress para no programadores
WordCamp Santander 2016
Álvaro Gómez Velasco @mrfoxtalbotwww.mrfoxtalbot.com/wcsantander
DisclaimerEsta ponencia es de software
Léa el Codex y haga backups frecuentesEn caso de duda consulte con un programador
Álvaro Gómez Velasco @mrfoxtalbotwww.mrfoxtalbot.com/wcsantander
WordPress desWordPressizado¿Por qué esta ponencia?
Álvaro Gómez Velasco @mrfoxtalbotwww.mrfoxtalbot.com/wcsantander
Álvaro Gómez Velasco @mrfoxtalbotwww.mrfoxtalbot.com/wcsantander
Álvaro Gómez Velasco @mrfoxtalbotwww.mrfoxtalbot.com/wcsantander
Álvaro Gómez Velasco @mrfoxtalbotwww.mrfoxtalbot.com/wcsantander
La Burbuja de los Page Builders
Guardan todo en the_content
Gestores de shortcodes
Mezclan info y presentación
Lentos en front y en back
Limitaciones
Dar estilos: complicado
Cambiar de tema: un infierno
Organizar o filtrar posts,
usando es info: imposible.
No, esto no es un blog.
Álvaro Gómez Velasco @mrfoxtalbotwww.mrfoxtalbot.com/wcsantander
WordPress es para blogs
Organizar y mostrar información:
El extracto
Los comentarios
Archivos por fechas
Autores
Categorías / Etiquetas
Post Meta
Las webs basadas en page
builders no usan nada de esto.
Y lo digo como un cumplido
Álvaro Gómez Velasco @mrfoxtalbotwww.mrfoxtalbot.com/wcsantander
Simplifica: Exportar a HTML estáticoWPO Y seguridad inmejorables
Limitaciones: forms, comentarios, urls.Pure Static
Álvaro Gómez Velasco @mrfoxtalbotwww.mrfoxtalbot.com/wcsantander
Organizando informaciónWordPress como gestor de contenidos
Álvaro Gómez Velasco @mrfoxtalbotwww.mrfoxtalbot.com/wcsantander
Hello WorldPosts, custom post types
Terms & taxonomies
Post & term hierarchy
Post & term meta
wp_posts
Álvaro Gómez Velasco @mrfoxtalbotwww.mrfoxtalbot.com/wcsantander
Post & term meta(‘Custom fields’)
Información auxiliar
Álvaro Gómez Velasco @mrfoxtalbotwww.mrfoxtalbot.com/wcsantander
Vainilla Custom FieldsEl metabox olvidado
Álvaro Gómez Velasco @mrfoxtalbotwww.mrfoxtalbot.com/wcsantander
Álvaro Gómez Velasco @mrfoxtalbotwww.mrfoxtalbot.com/wcsantander
Álvaro Gómez Velasco @mrfoxtalbotwww.mrfoxtalbot.com/wcsantander
Mostrando un Custom Field$mipostmeta = get_post_meta( get_the_ID(), 'nombre', true );
if ( ! empty( $mipostmeta ) ) {
echo $mipostmeta;
}
Álvaro Gómez Velasco @mrfoxtalbotwww.mrfoxtalbot.com/wcsantander
Organízalo con un pluginCrea tus CPTs, taxonomías y post/term meta
Álvaro Gómez Velasco @mrfoxtalbotwww.mrfoxtalbot.com/wcsantander
Organízalo con un Plugin
Ventajas
Fácil de usar
Ves todas las opciones
Desventajas
Está en la base de datos
Control de versiones
Más difícil de re-usar
Plugins para crear CPTs, taxonomías y custom fields
Álvaro Gómez Velasco @mrfoxtalbotwww.mrfoxtalbot.com/wcsantander
Plugins
CPT UI
CPTs y taxonomías
Útil para aprender
Permite exportar
Advanced Custom Fields
Postmeta
Repeaters & Grupos
Maquetar el backend
Visibilidad (CTP, term,
template…)
PODS (todo junto: framework)
Plugins para crear CPTs, taxonomías y custom fields
Álvaro Gómez Velasco @mrfoxtalbotwww.mrfoxtalbot.com/wcsantander
Sácalo al front (I)PHP copia-pega
Álvaro Gómez Velasco @mrfoxtalbotwww.mrfoxtalbot.com/wcsantander
Sácalo al front (I)
Temas hijos (plugin)
Jerarquía de plantillas
Conditional Tags
Generate WP
Plugin: What The File
WP Editor
Cómo crear o extender un tema
Álvaro Gómez Velasco @mrfoxtalbotwww.mrfoxtalbot.com/wcsantander
Álvaro Gómez Velasco @mrfoxtalbotwww.mrfoxtalbot.com/wcsantander
Sácalo al front (II)El planeta de los [shortcodes]
Álvaro Gómez Velasco @mrfoxtalbotwww.mrfoxtalbot.com/wcsantander
Sácalo al front (II)
Custom Content Shortcodes
Hacer loops
Combinable con Page Builders
Meta shortcodes (shortcoder)
WP Tiles
Plantillas de maquetación
Terms, autor y postmeta
El planeta de los [shortcodes]
Álvaro Gómez Velasco @mrfoxtalbotwww.mrfoxtalbot.com/wcsantander
Álvaro Gómez Velasco @mrfoxtalbotwww.mrfoxtalbot.com/wcsantander
Álvaro Gómez Velasco @mrfoxtalbotwww.mrfoxtalbot.com/wcsantander
Sácalo al front (II)
Lo bueno:
Fácil de usar y flexible
Ayuda a entender el Loop
Lo Malo:
No se están usando las
plantillas single ni archivo
Cada término nuevo supone
hacer un shortcode nuevo
No funciona con los singles
No permite queries complejas
El planeta de los [shortcodes]
Álvaro Gómez Velasco @mrfoxtalbotwww.mrfoxtalbot.com/wcsantander
Sácalo al front (III): hooks & filtersAppend/Preppend VS Pods
Álvaro Gómez Velasco @mrfoxtalbotwww.mrfoxtalbot.com/wcsantander
Álvaro Gómez Velasco @mrfoxtalbotwww.mrfoxtalbot.com/wcsantander
Pods (I): AutotemplatesAñadir/Sustituir en singles & archives
Magic tags Permite especificar el filtro
Widget contextual
Álvaro Gómez Velasco @mrfoxtalbotwww.mrfoxtalbot.com/wcsantander
Álvaro Gómez Velasco @mrfoxtalbotwww.mrfoxtalbot.com/wcsantander
Álvaro Gómez Velasco @mrfoxtalbotwww.mrfoxtalbot.com/wcsantander
Pods (II): loops con [shortcodes]Bucle general: [pods]
Para maquetar: [col_1_2]{@post_title}[/col_1_2]¿Un Visual Composer para plantillas de Tema?
Álvaro Gómez Velasco @mrfoxtalbotwww.mrfoxtalbot.com/wcsantander
Pods (III): TermMeta & Theme optionsY por si no fuera bastante, relational posts.
Álvaro Gómez Velasco @mrfoxtalbotwww.mrfoxtalbot.com/wcsantander
Love the User: Mejorando el AdminUn poco de amor para el usuario.
(Admin Columns, Tabify, Frontend editing, Crop Thumbnails)
Álvaro Gómez Velasco @mrfoxtalbotwww.mrfoxtalbot.com/wcsantander
CPTs en WordPress.comPorfolio y Testimonios
Con taxonomías y shortcodes
Álvaro Gómez Velasco @mrfoxtalbotwww.mrfoxtalbot.com/wcsantander
Widgets¡También son información!
Álvaro Gómez Velasco @mrfoxtalbotwww.mrfoxtalbot.com/wcsantander
Widgets
Declarar nuevas zonas e
insertar en la plantilla
Habilitar shortcodes
Visibilidad
Mostrarlos via [shortcode]
Contenido dinámico según el
post
¡También son información!
Álvaro Gómez Velasco @mrfoxtalbotwww.mrfoxtalbot.com/wcsantander
Code Snippets & SCCSBonus track heterodoxo
cc:@giga4es
Álvaro Gómez Velasco @mrfoxtalbotwww.mrfoxtalbot.com/wcsantander
CSS al vuelo*
Funcionan como los conditional
tags (.single, .single-cpt,
.term-nombre, .taxonomy-
nombre)
Se puede añadir una clase para
marcar el idioma (.es)
El id del post es una clase
(.postid-43)
Te dice qué la plantilla es
(.page-template-full-width)
Menús: clases para activos y
jerarquía
Clases CSS en <body> y menus*puede requerir un snippet php
Álvaro Gómez Velasco @mrfoxtalbotwww.mrfoxtalbot.com/wcsantander
PHP al vuelo
Se guardan como un CPT que se
activa y desactiva
Se puede ejecutar en el back o
en el front (o en ambos)
Se puede exportar a php (para
meter en mu-plugins)
Valida la sintáxios
Se puede deshabilitar en el
wp-config: define('CODE_SNIPPETS_SAFE_MODE',
true);
En comparación, lo de los CSS no sonaba tan mal
Álvaro Gómez Velasco @mrfoxtalbotwww.mrfoxtalbot.com/wcsantander
Gracias.¿Preguntas?