
Al ejecutar un sitio web de WordPress, la mejor práctica es ejecutar al menos una copia local del sitio, por lo que puede hacer cambios sin arriesgarlo por completo para arruinar el sitio en vivo. Ejecutar un entorno de desarrollo de WordPress para sus sitios es crucial para un flujo de trabajo productivo y seguro. En esta publicación, lo guiaré de diferentes maneras para configurar el entorno de desarrollo, instalar WordPress local, disputar la base de datos, la solución de problemas y muchos más. Hay mucho que cubrir, por lo que, aunque esta publicación tendrá mucha información, también contiene un buen enlace a otros elementos que se están profundizando más.
¿Sabía que WordPress 5.5 presenta una forma de establecer el tipo de entorno para un sitio? En el pasado, los desarrolladores tenían que usar su propio método para establecer el medio ambiente. Utilizamos nuestro propio conjunto de constantes antes, y otros usaron la variable ambiental WP_ENV. Esto es necesario para la carga condicional del código en diferentes entornos. Por ejemplo, en lugar de enviar correos electrónicos a través de Mailgun a mi sitio de desarrollo, se me cobrará condicionalmente un pequeño complemento MU para deshabilitar el complemento Mailgun y probar los correos electrónicos de forma segura con Mailtrap (trataré a Mailtrap más detallado más adelante).
Con la versión de WordPress 5.5, puede establecer el tipo de entorno utilizando una constante (generalmente en wp-config.php): define (‘wp_environment_type’, ‘desarrollo’); Luego puede usar el nuevo wp_get_environment_type () en el código condicional: if (‘desarrollo’ === wp_get_environment_type ()) {// Ejecute algún código de DEV solo} OK, así que vamos a entrar en él. El mejor lugar para comenzar es con el entorno de desarrollo de WordPress. Es el primer lugar en el que empiezo cuando construyo un nuevo sitio y es el lugar donde paso la mayor parte de mi tiempo desarrollando un sitio. El entorno de desarrollo de WordPress, como mencioné anteriormente, tener un entorno de desarrollo de WordPress es una parte esencial del conjunto de herramientas de un desarrollador, por lo que pueden trabajar en sitios y hacer cambios sin preocuparse por cometer errores directamente en el sitio en vivo. También es un gran lugar para probar las actualizaciones del complemento, los temas y el básico para que WordPress verifique que nada se interrumpa antes de aplicarlas en el sitio en vivo. Esta prueba es un proceso importante cuando actualiza un complemento de comercio electrónico como Woocoommerce.
Sin embargo, si nunca ha configurado un entorno de desarrollo, puede parecer una tarea desalentadora. Un entorno que se puede utilizar para ejecutar sitios de WordPress consta de 3 partes: un servidor web (generalmente Ningx o Apache), PHP y un sistema de administración de bases de datos (generalmente MySQL). Cómo instalar un entorno de desarrollo de WordPress Hay una gran cantidad de opciones de software disponibles para instalar y ejecutar un entorno de computadora, independientemente del sistema operativo. Hay medios de comunicación alrededor de Mac OS, Windows y Linux. Recientemente pregunté en Twitter qué usan los desarrolladores para su entorno de desarrollo de WordPress, y los resultados fueron interesantes. Parece que hay muchos usuarios que usan las mismas cosas, pero también una gran cantidad de personas que usan sistemas personalizados:? Hola, desarrolladores #WordPress – ¿Qué usas para tu entorno de desarrollo? Por favor rt para obtener? #WebDev-Iain Poulson (@PolevaultWeb) 11 de agosto de 2020 Rompí todas las respuestas y votos de una manera extremadamente científica para mostrar los resultados:
Claramente, hay muchos desarrolladores que usan localmente (anteriormente conocido como un volante local). Pete Tasker incluso escribió sobre la creación de un suplemento personalizado para el local. Algunas personas en Windows usan Laragon (que Matt escribió), y algunas personas usan Devilbox como Jonesy. Elegir el entorno de desarrollo adecuado es importante, por lo que pasé un tiempo analizando algunos: comparé MAMP, XAMPP, Local y Desktopserver, tomé Docker y Vagrant Head y exploré cómo se reunieron Valet, VVV y Chassis.

También estaba interesado en ver a un puñado de personas que decían que uso un VPS para sus sitios de desarrollo. Entonces, en lugar de tener un entorno de desarrollo local en su automóvil, tienen un entorno de desarrollo en un servidor remoto. Tengo una caída digital que uso. No es mucho más lento que algo local y a menudo necesito el sitio en un dominio en vivo para aceptar webhoks y cosas. – Jason Coleman (@jason_coleman) 11 de agosto de 2020 Escuché que los clientes de SpinUpWP lo usaran para hacer lo mismo e incluso nuestros desarrolladores creen que a veces es más rápido crear un nuevo sitio de WordPress en un servidor digital, para que pueda probar funciones en Las últimas versiones de PHP y MySQL. . Creación de un sitio Una vez que haya configurado el entorno de desarrollo de WordPress, deberá instalar WordPress local. Este puede ser un nuevo sitio web que comience desde cero o un sitio que es una copia de un sitio en vivo existente, que le permitirá hacer cambios en él. Sin embargo, hay una serie de opciones para crear sitios de WordPress. Puede ejecutar su propio script de configuración del sitio de WordPress, usar WP-CLI o usar compositor. Estoy usando la configuración basada en compositor para spinUpWP como punto de partida en estos días. Probablemente la parte más importante de un sitio de WordPress es la base de datos. Sin embargo, la base de datos de WordPress no juega bien con diferentes entornos, en gran parte porque almacenan rutas de URL y archivos en la base de datos, en lugar de mantener todo relativamente.
Esto hace que mover las bases de datos entre los entornos sea un desafío. Pero te tenemos cubierto. Moviendo bases de datos entre entornos Si configura un sitio de cero local a su entorno de desarrollo, probablemente habría instalado la base de datos nuevamente y, cuando se trata de colocar el sitio en vivo, tendrá que mover esa base de datos en el servidor en vivo. Hay formas manuales de mover las bases de datos de WordPress entre medios, como la exportación y luego la importación de PhpMyadmin. Sin embargo, la URL y las formas deben cambiarse en el archivo de exportación .sql, y si lo hace con una búsqueda y reemplazo, probablemente romperá las matrices de datos atendidas. Si ha exportado e importado la base de datos desde un entorno. En otro. , luego puede cambiar de forma segura la URL y las rutas utilizando algunos métodos:
Usando el comando WP-Cli Search-Replace
Uso de un complemento con una función de búsqueda y reemplazo como WP Migrate DB
Para eliminar los pasos de importación de exportación y manual de la ecuación y ahorrar algo de tiempo, recomiendo usar un complemento como WP Migra DB Pro, que le permitirá presionar y dibujar las bases de datos entre los medios. Por ejemplo, solo pone la última tos de un sitio en su entorno de desarrollo local y desea ponerlo en vivo. Puede “presionar” la base de datos local al sitio en vivo en unos pocos clics.
Lo mismo es cierto cuando tienes que hacer cambios en un sitio en vivo que se ejecuta durante algún tiempo. Retire la última versión de la base de datos en vivo en su sitio local, para que pueda trabajar en una copia exacta, lo cual es excelente para encontrar errores o trabajar en nuevas funciones. Hacer cambios en la base de datos a nivel local y usarlos de nuevo en el sitio en vivo es un juego de pelota completamente diferente. Versión corta: intente evitarlo. Versión larga: lea cómo administramos la fusión de las bases de datos de WordPress. Consejo profesional: ¡Use el complemento CLI para WP Migra DB Pro para comer en exceso su flujo de trabajo y nunca deje la línea de comando! La biblioteca de medios hablé sobre mover las bases de datos entre los promedios, pero ¿qué pasa con la biblioteca de medios? El contenido de la carpeta de carga de su sitio es una parte igualmente importante de un sitio de WordPress. Ejecutar una versión local de un sitio sin imágenes no será útil al hacer cambios de diseño o front-end.
SFTP siempre es una conexión de opción para su servidor en vivo y copie el director de WP-Contemplate/SupeLs del Sitio. O incluso usar SSH para conectar y sincronizar archivos con RSYNC. Esta es probablemente la forma más manual de hacer esto. He escrito sobre diferentes enfoques de este problema desde 2015 y algunos de los trucos cuidados, como Htaccess y Add_Filter Reescriting, todavía son relevantes hoy en día. Pero creo que mi enfoque favorito es el uso del complemento de archivos multimedia para WP Migra DB Pro, que le permite presionar y extraer medios con la base de datos. SSL local En 2017, Chrome comenzó a redirigir todo .dev a HTTPS, lo que ha afectado a un gran número de desarrolladores que usaron ese TLD para los sitios anfitriones locales. Firefox siguió el ejemplo en 2018. Los desarrolladores de repente tuvieron que crear certificados SSL para sus sitios locales. Pero esta no es la única razón para tener un certificado a nivel local. Replicar su sitio de producción lo más cerca posible es una buena idea asegurarse de que pueda solucionar completamente los problemas. Por ejemplo, las advertencias de contenido mixto no serán obvias hasta que el sitio se implementa con SSL. Otra razón para el SSL local es la integración de terceros, como OAPT webchooks o integraciones que requieren HTTPS. Hay diferentes formas de obtener un certificado SSL local y pueden depender de lo que elija usar para su entorno de desarrollo. Si usa un valet, puede usar el comando CLI Valet Secure para activar el SSL para el sitio. Local y Mamp Pro tienen la capacidad de generar y usar un certificado para el host, incluso en la interfaz de usuario.

Si desea lidiar con más, consulte nuestra guía para generar certificados SSL y crear una autoridad de certificación. Solución de problemas En mi opinión, uno de los mayores beneficios de un entorno de desarrollo de WordPress para un sitio es facilitar la solución de problemas de problemas. Si alguna vez ha intentado resolver un problema en un sitio en vivo solo armado con acceso FTP y líneas ERROR_LOG, sabrá cuán aburrido y peludo puede ser. La herramienta esencial de una caja de herramientas de herramientas de desarrollador de WordPress es WP_DEBUG. La activación de esta función en el archivo local wp-config.php, junto con wp_debug_log, escribirá todos los errores, notificaciones y advertencias en el archivo wp-content/debug.log: define (‘wp_debug’, true); Define (‘wp_debug_log’, true); Define (‘wp_debug_display’, falso); Aunque WP_DEBUG se desactiva de forma predeterminada y generalmente no se activa para sitios vivos, en realidad recomiendo usar el mismo código en los sitios de producción para detectar errores que realmente están sucediendo y usar un servicio como PaperTrail para brindarle una mejor visibilidad del diario. . Tener un sitio que se ejecuta localmente, con una nueva sincronización de la base de datos en vivo y WP_DEBUG, hace que el proceso del solucionador de problemas sea mucho más fácil, ¡y más seguro! Junto con el uso de un solucionador de problemas como Xdebug, está mucho mejor equipado para recrear y rastrear errores.
Xdebug le permite establecer puntos de interrupción en ciertas líneas de código, de modo que cuando esas líneas de código se ejecutan mediante una solicitud, la ejecución se interrumpe y obtiene una perspectiva de todas las variables y globales, ayudándole a realizar lo que no es un conjunto, qué matriz es En realidad, un objeto o cualquier pieza de código está roto. Otros consejos Al ejecutar un entorno de desarrollo de WordPress, hay algunas otras cosas que debe considerar, lo que mejorará su flujo de trabajo. Correo electrónico para sitios en vivo, recomiendo usar un complemento de correo electrónico transaccional para administrar sus correos electrónicos, pero no desea enviar correos electrónicos desde el sitio local a través de este servicio. Además de aumentar los costos al agregar a su uso, no desea enviar accidentalmente correos electrónicos a los clientes si se envía accidentalmente un correo electrónico desde su sitio local. Soy un gran admirador de Mailtrap, que ofrece un entorno de correo electrónico seguro para sus sitios de desarrollo y prueba. Tiene un plan gratuito para proyectos personales y le permite enviar sus correos electrónicos a través de su servidor SMTP a su propia casilla de correo electrónico en Sandbox.

En todos mis sitios, agrego este mu-plugi para deshabilitar el complemento de correo electrónico transaccional y digo WordPress para enviar correos electrónicos a través de MailTrap cuando el sitio se ejecuta en un entorno de producción: insmtp (); $ phpmailer-> host = ‘smtp.mailtrap.io’; $ phpmailer-> smtpaaut = true; $ phpmailer-> puerto = 2525; $ phpmailer-> username = ‘{mailtrap_username}’; $ phpmailer-> contraseña = ‘{mailtrap_password}’; } Pluginuri Hay algunos complementos de WordPress que siempre instalaré en mis sitios locales de WordPress: consulta Monitor-My Plugin Basic para solucionar problemas de WordPress, encontrar consultas SQL lentas o duplicadas e investigar bloqueos en el código.
El solucionador de problemas para obtener una perspectiva de las solicitudes, caché y otra información sobre el sitio web de WordPress directamente en la barra de administración.
WP Crontol: le brinda información sobre el sistema de programación CRON WordPress, para que pueda comprender los problemas con los eventos programados.
Debido a que mis sitios se gestionan con el compositor (complementos Core y WordPress), los instalo como dependencias de desarrollo para que no lleguen al sitio en vivo. Por ejemplo: el compositor requerir: dev wpackist-plugin/consulty-morit, entonces activo “no migrar” activo_plugins “en mis perfiles WP Migra DB Pro, por lo que cada vez que dibujo el sitio en vivo a localmente, estos complementos de desarrollo no lo harán estar deshabilitado. WP-CLI WP-CLI es una herramienta extremadamente útil. Aliviar la vida, permitiéndole administrar sitios de WordPress en la línea de comando. Hay una serie de comandos que pueden ser útiles en su entorno de desarrollo de WordPress: WP Core Install WordPress en un solo comando
Sitio WP vacío: trunca las tablas de publicación, términos y comentarios, pero dejando intacta la tabla de opciones
WP DB RESET-eliminar todas las tablas de la base de datos, lo que le permite hacer una nueva instalación
Servidor WP: inicie el servidor web PHP Built -in para una instalación particular de WordPress.
La mejor configuración para su entorno local de desarrollo de WordPress
Tags La mejor configuración para su entorno local de desarrollo de WordPress
homefinance blog