WordPress es un gusto adquirido y mejora con cada cosa nueva que aprendes. Todos hemos estado usando WordPress durante bastante tiempo, ¡es una de las razones por las que está aquí en Themelocal, leyendo este artículo! Al igual que tú, yo también me topé con esta excelente artesanía y he quedado hipnotizado por su pura belleza. WordPress no solo nos brinda la capacidad de publicar sitios web dinámicos y visualmente atractivos en cuestión de minutos, sino que también lo usa como una solución de administración de contenido multidimensional (CMS).
Como nota al margen, me gustaría mencionar que este artículo está destinado a un principiante de WordPress. La mayoría de ustedes sabrá de lo que estoy hablando. Así que no dude en leerlo rápidamente y compartir sus puntos de vista en la sección de comentarios. ¡Gracias!
Volviendo al camino, echemos un vistazo a las cosas que podemos hacer con WordPress:
- Sitio web de la revista: TIME, GigaOM, TechCrunch, todos usan WordPress.com VIP
- Aloje varios sitios web bajo un mismo techo – EduBlogs (WordPress MultiSite)
- Crear un foro (BuddyPress)
- Portafolio en línea
- Alojar un portal de empleo
- Tienda de comercio electrónico (Woocommerce, Exchange, EDD, Cart66, etc.)
- Fotoblog o portafolio de fotografías
- Sitio para una banda, un restaurante y mucho más.
La lista continua. Este artículo es un precursor de nuestra próxima serie de publicaciones: La guía definitiva para el almacenamiento en caché de WordPress. Antes de comprender el almacenamiento en caché de WordPress, debemos comprender cómo funciona WordPress internamente. No solo editar y eliminar publicaciones y comentarios, sino también cómo unos miles de líneas de código se entrelazan entre sí y producen hermosos sitios web dinámicos.
Funcionamiento interno de WordPress
Todos sabemos cómo trabajar con WordPress. Todo comienza con iniciar sesión en su panel de administrador de WordPress, directamente desde su-sitio / wp-login.php seguido de la publicación, modificación o carga de nuevo contenido, instalación de complementos, temas, realización de copias de seguridad, etc.
¿Pero has pensado en cómo funciona todo esto? Los sitios web se ejecutan en HTML (que significa Hyper Text Markup Language). Verifique su barra de direcciones; siempre encontrará http: //sitename.tld. Otros protocolos incluyen https, ftp, ssh, etc.
Por tanto, se entiende que el objetivo final de WordPress es generar páginas HTML de forma dinámica. El término clave para entender aquí es «dinámicamente». Los términos «página HTML», «página web» y «página web» son sinónimos. En un nivel muy básico, WordPress usa PHP y una base de datos SQL para almacenar todos sus datos. No debemos preocuparnos mucho por PHP y otros lenguajes de scripting que usa WordPress, ya que esta es una guía para principiantes y son temas avanzados.
Por tanto, tenemos dos entidades. Uno es el «código PHP» que forma el núcleo de WordPress y la «base de datos» que forma la memoria de WordPress. Cada instalación de WordPress tiene una base de datos. Ni mas ni menos. Toda la información que ha ingresado y que hará en el futuro se almacena en la base de datos de WordPress. Ejemplos incluyen:
- Información del usuario como contraseña (cifrada con MD5), dirección de correo electrónico, etc.
- Todas las publicaciones, páginas, etiquetas, categorías y la relación entre ellas.
- Tipos de publicaciones personalizadas
- Publicar revisiones, borradores y opciones en la papelera
- Comentarios: tanto aprobados como no aprobados y spam
- Opciones de tema y datos de complementos
¿Qué pasa con las imágenes, documentos y otros archivos que se cargan? ¿Están también almacenados en la base de datos de WordPress? No. Están almacenados en una carpeta llamada «wp_content». Más sobre esto sigue.
La estructura de carpetas de WordPress
A partir de WordPress 3.6.1, hay tres carpetas principales en cada instalación de WordPress.
La carpeta base
Este es el directorio de instalación de WordPress y todo (excepto la base de datos de WordPress, que existe aquí). Lo llamaremos «directorio raíz». En el caso de personas que ejecutan WordPress en servidores de alojamiento compartido impulsados por cPanel, lo más probable es que el directorio raíz sea el contenido del directorio «public_html», si está ejecutando WordPress en su dominio base (es decir, site.com y no site.com/ carpeta).
El directorio raíz de WordPress contiene exactamente tres carpetas: wp_content, wp_includes y wp_admin junto con un montón de otros archivos PHP, el más importante es «wp_config.php». Al modificar este archivo, podemos agregar un montón de opciones principales de personalización de WordPress que no están disponibles en el panel de administración de WordPress. Por ejemplo, podemos deshabilitar las revisiones de publicaciones, establecer el nombre del sitio utilizado por WordPress (útil para cambios de dominio), habilitar el modo de mantenimiento, etc. El archivo wp-config.php es un archivo muy importante y no debe ser manipulado. Contiene información crucial, como las credenciales de acceso a su base de datos de WordPress. Si alguien puede acceder a su base de datos, él / ella tiene control total sobre su sitio.
wp_include
Esta carpeta contiene todos los demás archivos y clases PHP que se requieren para las operaciones centrales de WordPress. Nuevamente, no desea editar ningún archivo en este directorio.
wp_admin
Esta carpeta contiene los distintos archivos del panel de WordPress. Usted sabe que todas las funciones administrativas o relacionadas con WordPress, como escribir publicaciones, moderar comentarios, instalar complementos y temas se realizan a través del panel de WordPress. Aquí solo se permite el acceso a los usuarios registrados y el acceso está nuevamente limitado según la función del usuario. Un administrador permite el acceso completo seguido por el editor, luego el colaborador y finalmente el suscriptor. Por lo general, se puede acceder al panel de WordPress en http://wpexplorer.com/wp-admin.
wp_content
La carpeta wp_content contiene todos los datos cargados por el usuario y nuevamente se divide en tres subcarpetas:
- temas
- complementos
- cargas
El directorio «temas» contiene todos los temas que están instalados en su sitio de WordPress. Cada archivo wordpress.zip que descargue de WordPress.org tiene 2 temas instalados: para WordPress 3.6.1, son Twenty Twelve y Twenty Thirteen. Puede instalar tantos temas como desee, pero solo puede activar un tema a la vez (aunque existen algunos complementos que le permiten activar más). Además, el directorio de «temas» nunca puede estar vacío, ¡ya que WordPress necesita al menos un tema para trabajar!
Del mismo modo, los «complementos» se utilizan para almacenar todos los complementos instalados en su sitio de WordPress. A diferencia del directorio de «temas», este directorio puede estar vacío, ya que puede ejecutar perfectamente un sitio de WordPress sin utilizar ningún complemento. Tiene la libertad de activar tantos complementos como desee, pero es una buena práctica instalar solo los necesarios. Consulte el artículo de Kyla sobre los diversos complementos de WordPress disponibles en la actualidad.
Todas las imágenes (y otros archivos multimedia) que haya subido desde el momento en que lanzó su sitio, junto con todas las subidas futuras, se almacenarán en el directorio «subidas», clasificadas por año, mes y día. Esta carpeta se puede considerar como la base de datos para todos los datos no textuales: imágenes, PDF, videos, MP3, etc. Por eso es una buena práctica de seguridad restringir el acceso público a estas carpetas. Esto se puede lograr modificando el archivo .htaccess, presente dentro del directorio wp_content. Por lo tanto, al realizar una copia de seguridad; copiar solo la carpeta de instalación de WordPress no es suficiente. ¡Necesita copiar tanto la base de datos como todo el contenido de su directorio de instalación de WordPress!
La anatomía de una solicitud de WordPress
O como me gusta llamarlo
¿Qué sucede cuando alguien ve tu blog?
Cuando alguien visita su sitio web con WordPress, WordPress genera dinámicamente un código HTML (se combina con CSS y JS) y se lo entrega al visitante. No verá la extensión .html después de la URL (como puede haber visto en algunos sitios web antiguos) ya que este contenido se genera dinámicamente. Los siguientes puntos son una generalización de las acciones que se llevan a cabo en caso de solicitud de una página web:
- El navegador del visitante solicita una página web
- El núcleo de WordPress (se puede considerar como el cerebro de WordPress) llama a los scripts PHP requeridos comenzando con index.php
- El núcleo de WP luego se comunica con su base de datos y recupera los datos (publicaciones / páginas, etc.)
- Luego combina los datos obtenidos, los datos de los complementos actualmente activos y el tema actualmente activo y genera el código HTML «sobre la marcha» o «dinámicamente»
- Luego sirve este código HTML generado dinámicamente al navegador del visitante.
Del mismo modo, cuando se publica o guarda una publicación, se envía un comentario o se realiza una búsqueda, el núcleo de WordPress realiza las operaciones internas requeridas y las guarda en su base de datos para uso futuro y también notifica al administrador de WordPress. Usted (el administrador) los ve como un nuevo comentario en espera de moderación, o una ‘x’ cantidad de comentarios en su cola de spam, etc.
Ahora, repetir todos estos pasos cada vez que alguien solicita una página web (publicación, página, página de archivo, cualquier cosa) es un trabajo que consume tiempo y recursos. Está bien cuando 10 personas visitan su sitio. Pero aumente eso en 100, 1000 o un millón, entonces comienza el verdadero problema. Solo las supercomputadoras podrían manejar tantas operaciones simultáneas. Y la mayoría de los sitios de WordPress están alojados en servidores de alojamiento web compartido, que tienen quizás 1/1000th del poder de las supercomputadoras.
Entonces, ¿qué hacemos ahora? Ingrese al almacenamiento en caché de WordPress. No lo cubriremos aquí, así que estad atentos a la siguiente parte de la serie: una introducción al almacenamiento en caché de WordPress.