Prefacio

Este trabajo se ha traducido utilizando IA. Agradecemos tus opiniones y comentarios: translation-feedback@oreilly.com

Mientras escribimos esto, WordPress alimenta el 32% de todos los sitios de Internet, y esa cifra va en aumento. Muchos desarrolladores quieren hacer más con sus sitios de WordPress, pero creen que tienen que pasarse a un marco de aplicaciones más tradicional, como Ruby on Rails, Symfony, Yii o Laravel, para crear aplicaciones web "de verdad". Este sentimiento es erróneo, y estamos aquí para arreglarlo.

A pesar de comenzar como un software de blogging y de existir en la actualidad principalmente como un sistema de gestión de contenidos, WordPress se ha convertido en una plataforma flexible y capaz de crear aplicaciones web. Este libro te mostrará cómo utilizar WordPress como marco de aplicaciones para crear cualquier aplicación web, grande o pequeña.

A quién va dirigido este libro

Este libro será de gran utilidad para desarrolladores de WordPress que deseen trabajar en aplicaciones más pesadas, y para desarrolladores de PHP con cierta experiencia en WordPress que busquen un marco de aplicaciones basado en PHP.

Los desarrolladores comerciales de plugins y temas, o cualquiera que trabaje en grandes proyectos distribuidos de WordPress, también encontrarán útiles los conceptos y técnicas de este libro.

Si eres un desarrollador PHP o agnóstico del lenguaje que utiliza otro framework y estás celoso de la gran biblioteca de plugins y temas de WordPress, puede que te sorprenda saber lo bien que puede funcionar WordPress como framework de aplicación general. Leer y aplicar las lecciones de este libro podría cambiar tu vida laboral a mejor.

Suponemos que los lectores tienen conocimientos intermedios de programación general en PHP. También debería tener conocimientos básicos de HTML y CSS, y estar familiarizado con MySQL y las consultas SQL. Los conocimientos básicos de programación JavaScript y jQuery te ayudarán con el Capítulo 9 y los ejemplos relacionados.

Para quién no es este libro

Este libro no es para personas que quieran aprender a utilizar WordPress como usuario final. Habrá breves introducciones a la funcionalidad estándar de WordPress, pero asumimos que ya has experimentado WordPress desde la perspectiva de un usuario.

Este libro no está pensado para no programadores. Aunque es posible crear aplicaciones web muy funcionales simplemente combinando y configurando los numerosos plugins disponibles para WordPress, este libro está escrito para desarrolladores que crean sus propios plugins y temas para impulsar nuevas aplicaciones web.

Este libro no te enseñará a programar, sino a programar "a la manera de WordPress".

Lo que aprenderás

Nuestro deseo con este libro es que aprendas las técnicas de programación y organización y las buenas prácticas para desarrollar aplicaciones complejas con WordPress.

Capítulo 1, Crear aplicaciones web con WordPress

Define lo que entendemos por "aplicación web" y también explica por qué utilizar o no WordPress para crear aplicaciones web y cómo comparar WordPress con otros marcos de aplicaciones. También presentamos SchoolPress, la aplicación de WordPress que utilizamos como ejemplo a lo largo del libro.

Capítulo 2, Conceptos básicos de WordPress

Cubre los aspectos básicos de WordPress. Repasamos los distintos directorios del núcleo de la instalación de WordPress y qué va dónde. También explicamos cada tabla de la base de datos creada por WordPress, qué datos contiene cada una y qué funciones de WordPress se asignan a esas tablas. Incluso si eres un desarrollador experimentado de WordPress, puedes aprender algo de este capítulo, y te animamos a leerlo.

Capítulo 3, Uso de plugins de WordPress

Todo gira en torno a los plugins. ¿Qué son? ¿Cómo creas tus propios plugins? ¿Cómo debes estructurar el plugin principal de tu aplicación? ¿Cuándo debes aprovechar los plugins de terceros o crear los tuyos propios?

Capítulo 4, Temas

Todo gira en torno a los temas. ¿Cómo funcionan los temas? ¿Cómo se relacionan los temas con las vistas en una estructura típica de modelo-vista-controlador (MVC)? ¿Qué código debe ir en tu tema y qué código debe ir en los plugins? También cubrimos el uso de frameworks de temas y frameworks de interfaz de usuario, y los fundamentos del diseño responsivo.

Capítulo 5, Tipos de entradas personalizadas, metadatos de entradas y taxonomías

Cubre los tipos de entrada personalizados y las taxonomías. Repasamos los tipos de entrada predeterminados de WordPress, por qué puedes necesitar crear los tuyos propios y cómo hacerlo. También cubrimos los metapost y las taxonomías, para qué es apropiado cada uno, y cómo crear taxonomías personalizadas y asignarlas a tus tipos de post. Por último, mostraremos cómo crear clases envolventes para tus tipos de entrada, con el fin de organizar tu código utilizando la programación orientada a objetos (POO).

Capítulo 6, Usuarios, funciones y capacidades

Cubre usuarios, roles y capacidades. Mostramos cómo añadir, actualizar y eliminar usuarios mediante programación y cómo trabajar con metausuarios, roles y capacidades. También mostramos cómo ampliar la clase WP_User para tus arquetipos de usuario como "clientes" y "profesores" para organizar mejor tu código utilizando técnicas de programación orientada a objetos.

Capítulo 7, Trabajar con las API, objetos y funciones auxiliares de WordPress

Cubre algunas de las API y funciones de ayuda de WordPress más útiles que no encajaban en el resto del libro, pero que siguen siendo importantes para los desarrolladores que crean aplicaciones web con WordPress.

Capítulo 8, WordPress seguro

Se trata de proteger tus aplicaciones, plugins y temas de WordPress.

Capítulo 9, Marcos JavaScript y flujo de trabajo

Cubre el uso de JavaScript y Ajax en tu aplicación WordPress. Repasamos la forma correcta de encolar JavaScript en WordPress y cómo construir comportamientos asíncronos en tu aplicación.

Capítulo 10, API REST de WordPress

Cubre la API REST de WordPress y cómo utilizarla para integrar WordPress con aplicaciones externas.

Capítulo 11, Proyecto Gutenberg, bloques y tipos de bloque personalizados

Cubre el editor de bloques y cómo hacer tus propios bloques.

Capítulo 12, Redes multisitio de WordPress

Cubre las redes multisitio de WordPress, incluyendo cómo configurarlas y las cosas que hay que tener en cuenta al desarrollar para multisitio.

Capítulo 13, Localización de aplicaciones de WordPress

Cubre la localización de tus plugins y temas de WordPress, incluyendo cómo preparar tu código para la traducción y cómo crear y utilizar archivos de traducción.

Capítulo 14, Optimización y escalado de WordPress

Cubre cómo optimizar y escalar WordPress para aplicaciones web de gran volumen. Repasamos cómo probar el rendimiento de tu aplicación de WordPress y las técnicas más populares para acelerar y escalar los sitios que ejecutan WordPress.

Capítulo 15, Comercio electrónico

Cubre el comercio electrónico. Repasamos los distintos tipos de plugins de comercio electrónico disponibles y cómo elegir entre ellos. A continuación, explicamos en detalle cómo puedes utilizar WordPress para gestionar los pagos y las cuentas de las aplicaciones web de software como servicio (SaaS).

Capítulo 16, Aplicaciones móviles con WordPress

Cubre cómo utilizar WordPress para potenciar aplicaciones nativas en dispositivos móviles mediante la creación de envoltorios de aplicaciones para iOS y Android.

Capítulo 17, Bibliotecas PHP, integraciones de servicios web y migraciones de plataforma

Cubre algunas bibliotecas, servicios y API PHP de terceros que se utilizan a menudo en aplicaciones web, así como la forma de integrarlas con WordPress, incluyendo migraciones completas.

Capítulo 18, El futuro

Habla sobre el futuro de WordPress, qué tipo de aplicaciones esperamos ver funcionando con WordPress, qué tipo de actualizaciones vemos venir para WordPress y qué herramientas y marcos de trabajo hay que tener en cuenta para el futuro.

Sobre el Código

Puedes encontrar todos los ejemplos de este libro en https://github.com/bwawwp. Ten en cuenta que estos ejemplos de código se escribieron para transmitir con la mayor claridad posible los conceptos que tratamos en el libro. Para mejorar la legibilidad, a menudo ignoramos las buenas prácticas en materia de estándares de codificación, seguridad y localización (que cubrimos en los Capítulos 8 y13) o pasamos por alto ciertos casos de perímetro. Deberás tener esto en cuenta antes de utilizar cualquier ejemplo en código de producción.

Puedes encontrar la aplicación de muestra SchoolPress en https://schoolpress.me, con todo el código fuente abierto para ese sitio disponible en el sitio GitHub de este libro.

Convenciones utilizadas en este libro

En este libro se utilizan las siguientes convenciones tipográficas:

Cursiva

Indica nuevos términos, URL, direcciones de correo electrónico, nombres de archivo y extensiones de archivo.

Constant width

Se utiliza en los listados de programas, así como dentro de los párrafos para referirse a elementos del programa como nombres de variables o funciones, bases de datos, tipos de datos, variables de entorno, sentencias y palabras clave.

Constant width bold

Muestra comandos u otros textos que deben ser tecleados literalmente por el usuario.

Constant width italic

Muestra el texto que debe sustituirse por valores proporcionados por el usuario o por valores determinados por el contexto.

Nota

Este elemento significa un consejo, sugerencia o nota general.

Advertencia

Este elemento indica una advertencia o precaución.

Utilizar ejemplos de código

Como se menciona en "Acerca del código", puedes encontrar todos los ejemplos de código de este libro en https://github.com/bwawwp.

Si tienes una pregunta técnica o un problema al utilizar los ejemplos de código, envía un correo electrónico a

Este libro está aquí para ayudarte a hacer tu trabajo. En general, si se ofrece código de ejemplo con este libro, puedes utilizarlo en tus programas y documentación. No es necesario que te pongas en contacto con nosotros para pedirnos permiso, a menos que estés reproduciendo una parte importante del código. Por ejemplo, escribir un programa que utilice varios trozos de código de este libro no requiere permiso. Vender o distribuir ejemplos de libros de O'Reilly sí requiere permiso. Responder a una pregunta citando este libro y el código de ejemplo no requiere permiso. Incorporar una cantidad significativa de código de ejemplo de este libro en la documentación de tu producto sí requiere permiso.

Agradecemos, pero generalmente no exigimos, la atribución. Una atribución suele incluir el título, el autor, la editorial y el ISBN. Por ejemplo: "Building Web Apps with WordPress, Second Edition", de Brian Messenlehner y Jason Coleman (O'Reilly). Copyright 2020 Brian Messenlehner y Jason Coleman, 978-1-491-99008-7".

Si crees que el uso que haces de los ejemplos de código no se ajusta al uso legítimo o al permiso concedido anteriormente, no dudes en ponerte en contacto con nosotros en

Aprendizaje en línea O'Reilly

Nota

Durante más de 40 años, O'Reilly Media ha proporcionado formación, conocimientos y perspectivas sobre tecnología y negocios para ayudar a las empresas a alcanzar el éxito.

Nuestra red única de expertos e innovadores comparten sus conocimientos y experiencia a través de libros, artículos, conferencias y nuestra plataforma de aprendizaje online. La plataforma de aprendizaje en línea de O'Reilly te ofrece acceso bajo demanda a cursos de formación en directo, rutas de aprendizaje en profundidad, entornos de codificación interactivos y una amplia colección de textos y vídeos de O'Reilly y de más de 200 editoriales. Para más información, visita http://oreilly.com.

Cómo contactar con nosotros

Dirige tus comentarios y preguntas sobre este libro a la editorial:

  • O'Reilly Media, Inc.
  • 1005 Gravenstein Highway Norte
  • Sebastopol, CA 95472
  • 800-998-9938 (en Estados Unidos o Canadá)
  • 707-829-0515 (internacional o local)
  • 707-829-0104 (fax)

Tenemos una página web para este libro, donde se enumeran las erratas y cualquier información adicional. Puedes acceder a esta página en https://oreil.ly/building-apps-wp2.

Envía un correo electrónico para comentar o hacer preguntas técnicas sobre este libro.

Para más información sobre nuestros libros, cursos, conferencias y noticias, consulta nuestro sitio web en http://www.oreilly.com.

Encuéntranos en Facebook: http://facebook.com/oreilly

Síguenos en Twitter: http://twitter.com/oreillymedia

Míranos en YouTube: http://www.youtube.com/oreillymedia

Agradecimientos

De Brian: Gracias a Jason Coleman y Matt Mullenweg; ¡no podría haber escrito este libro sin ellos! Un agradecimiento muy especial a Alicia Young por estar al tanto de todo en O'Reilly Media. Un agradecimiento especial a nuestros revisores técnicos por asegurarse de que todo lo que hay en el libro es legítimo. Gracias a Scott Bolinger de AppPresser.com y a Jaffe Worley de AlphaWeb.com por aguantarme. Gracias a mi familia y amigos, que siempre han estado a mi lado y nunca han dejado de creer en mí. Sobre todo, estoy agradecido a mis hijos, Dalya; Brian, Jr; Nina; Cam; y Aksel Messenlehner; ellos me dan un propósito, y sin ellos probablemente ni siquiera sabría lo que es WordPress.

De Jason Gracias a mi coautor Brian por pedirme que escribiera este libro con él. Gracias a nuestras editoras originales Meghan y Allyson por mantenernos en el buen camino y ayudarnos a mantenernos fieles a nuestra visión original. Gracias a Alicia Young por editar la segunda edición de este libro y soportar nuestras explicaciones de "WP Drama". Gracias a todos los magníficos editores técnicos que hemos tenido en ambas ediciones del libro: Sam Hotchkiss, Peter MacIntyre, Pippin Williamson, John James Jacoby y Andrew Lima. Gracias a Frederick Townes por sus comentarios y aportaciones a nuestro capítulo sobre optimización y escalado. Gracias a Chris Lema por el maravilloso prólogo de este libro, sus comentarios sobre el libro y sus consejos en general. Gracias a todos los miembros de la comunidad de WordPress que respondieron a todos mis tweets aleatorios y que pueden o no haber sabido que me estaban ayudando a escribir este libro. Gracias a mi mujer, Kim, por apoyarme como siempre durante otra aventura más en nuestra vida. Gracias a mi hija, Marin, por echarme de menos cuando me ausentaba para escribir, y a mi hijo, Isaac, por preguntarme constantemente si "ya había terminado el libro". Por último, pero no por ello menos importante, gracias a mi familia, que siempre ha apoyado mi escritura: Mamá, papá, Jeremy y Nana Men, que están encantados de ser los primeros no programadores en leer Construir aplicaciones web con WordPress.

Get Creación de aplicaciones web con WordPress, 2ª edición now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.