Guía fidedigna y paso a paso para instalar WordPress en un dominio genérico tu-sitio.com, incluyendo el subdominio www, la configuración del VirtualHost en Apache, la base de datos en MariaDB y el certificado SSL
📘 Guía de instalación de WordPress en tu-sitio.com
1. 🔧 Preparar el dominio y subdominio
En tu panel de DNS (ej. DonDominio):
Registro A
Nombre: @
Valor: IP pública de tu VPS
Registro A para www
Nombre: www
Valor: misma IP pública
(Opcional) Registro AAAA si usas IPv6
👉 Esto asegura que tanto tu-sitio.com como www.tu-sitio.com apunten al servidor.
2. 🖥️ Crear el VirtualHost en Apache
Edita o crea un archivo en /etc/apache2/sites-available/tu-sitio.conf:
CREATE DATABASE tu_sitio_db;
CREATE USER 'tu_sitio_user'@'localhost' IDENTIFIED BY 'contraseña_segura';
GRANT ALL PRIVILEGES ON tu_sitio_db.* TO 'tu_sitio_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;
4. 📥 Instalar WordPress
Descarga y descomprime:
bash
cd /tmp
wget https://wordpress.org/latest.tar.gz
tar -xvzf latest.tar.gz
sudo mv wordpress/* /var/www/tu-sitio/
👉 Elige la opción de redirigir todo el tráfico a HTTPS.
6. ⚙️ Configuración en WordPress
En el panel de administración:
Dirección de WordPress (URL): https://tu-sitio.com
Dirección del sitio (URL): https://tu-sitio.com
En .htaccess asegúrate de tener:
apache
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
</IfModule>
7. 🔑 Recordatorio de acceso
Si olvidas la contraseña:
sql
UPDATE wp_users SET user_pass = MD5('NuevaClave2025!') WHERE user_login = 'admin';
👉 Luego cámbiala desde el panel para que se guarde con el hash moderno.
8. 📑 Checklist final
DNS: tu-sitio.com y www.tu-sitio.com apuntando a la IP del VPS
Apache: VirtualHost activo con ServerName y ServerAlias
MariaDB: base de datos y usuario creados con permisos
WordPress: instalado en /var/www/tu-sitio con permisos correctos
Certbot: SSL activo y redirección a HTTPS
WordPress: URLs ajustadas a https://tu-sitio.com
🔒 Cómo evitar interferencias entre sitios
Cada dominio/subdominio debe tener su propio DocumentRoot en Apache.
En cada archivo de configuración (/etc/apache2/sites-available/*.conf) defines el ServerName, ServerAlias y el DocumentRoot correspondiente. 👉 Así Apache sabe qué carpeta servir según el dominio que se solicite.
Certificados SSL: cada dominio tiene su propio certificado. Certbot los instala y configura en el VirtualHost correspondiente, sin tocar los demás.
Bases de datos: cada WordPress debe usar su propia base de datos y usuario en MariaDB. 👉 Ejemplo: tu_sitio_db.
Esto garantiza que no se mezclen usuarios ni contenido.
Usuarios SFTP/SSH: si quieres máxima seguridad, cada sitio puede tener su propio usuario “enjaulado” en su directorio. Así evitas que un usuario acceda a los archivos de otro sitio.
✅ En resumen
Mientras mantengas:
Directorios separados
VirtualHosts separados
Bases de datos separadas
(Opcional) usuarios SFTP separados
👉 No habrá interferencia entre tus sitios. Apache y MariaDB gestionan cada uno de forma independiente.
Opciones gratuitas y de pago del servicio ChatGPT (por OpenAI), así como las diferencias más importantes entre ellas:
✅ Versión gratuita
Se puede usar sin coste para uso básico, chatear, hacer preguntas, etc. (cloudeagle.ai)
Algunas limitaciones típicas:
Modelos menos potentes o se cambia a versiones ligeras cuando está muy ocupado. (DeltaTimeNews)
Posibles tiempos de espera o acceso limitado durante horas de alta demanda. (allmoneylab.com)
Funciones avanzadas (como herramientas especializadas, integración de archivos, proyectos) pueden estar ausentes o limitadas. (nexos.ai)
💡 Versión de pago (“Plus” u otros planes)
El plan más común es ChatGPT Plus (unos US $20/mes típicamente) para usuarios individuales. (cloudeagle.ai)
Qué aporta sobre la versión gratuita:
Acceso a modelos más potentes y avanzados (mejor “razonamiento”, mayor contexto, etc.). (DeltaTimeNews)
Menos probabilidades de encontrar la “capacidad completa” ocupada o de que el servicio esté restringido. (allmoneylab.com)
Funciones extra como subida de archivos, análisis de datos, generación de imágenes, etc., que pueden estar más disponibles o más potentes en la versión de pago. (overchat.ai)
También existen planes para empresas o equipos con precios distintos y características adicionales (más límites, uso profesional, etc.). (cloudeagle.ai)
Para instalar un certificado SSL gratuito de Let’s Encrypt en un VPS, puedes usar herramientas como Certbot o paneles como CloudPanel o cPanel, dependiendo de tu configuración.
Aquí tienes una guía general paso a paso para hacerlo manualmente con Certbot, que es la herramienta oficial recomendada por Let’s Encrypt:
Certbot detectará tus dominios configurados y te preguntará si deseas redirigir todo el tráfico a HTTPS.
Verifica la renovación automática:
Let’s Encrypt emite certificados válidos por 90 días.
Certbot instala automáticamente un cron job para renovarlos.
Puedes probarlo con:
sudo certbot renew --dry-run
Cuando hay que renovar el Certificado SSL
Los certificados de Let’s Encrypt deben renovarse cada 90 días.
Esto es una política estándar de Let’s Encrypt para mejorar la seguridad. Aquí tienes los detalles clave:
📅 Frecuencia de renovación
Validez: 90 días desde la emisión
Recomendación: Renovar alrededor del día 60 para evitar expiraciones accidentales
Renovación automática con Certbot
Si usaste Certbot para instalar el certificado, probablemente ya esté configurado para renovarse automáticamente mediante un cron job o un timer de systemd.
Puedes verificarlo ejecutando:
sudo certbot renew --dry-run
Este comando simula la renovación para confirmar que todo funciona correctamente.
⚠️ ¿Qué pasa si no se renueva?
El sitio web mostrará advertencias de seguridad a los visitantes
Los navegadores bloquearán el acceso por HTTPS
Podrías perder posicionamiento SEO y confianza de los usuarios
Instrucciones detalladas para saber como adjuntar un Plugin a WordPress.org. Para subir un plugin al repositorio oficial de WordPress.org necesitas cumplir con requisitos técnicos, legales y de calidad: tener un plugin funcional, seguir las directrices de seguridad y licencias, y pasar una revisión manual.
Requisitos técnicos
Estructura del plugin: Debe estar correctamente organizado con archivos como readme.txt, plugin-name.php, y carpetas de recursos si aplica.
Archivo readme.txt: Obligatorio. Debe seguir el formato oficial e incluir:
Nombre del plugin
Descripción
Versión
Autor
Licencia
Etiquetas
Requisitos mínimos de WordPress y PHP
Compatibilidad: Debe funcionar con la última versión estable de WordPress.
Seguridad: No debe incluir vulnerabilidades conocidas, funciones inseguras (como eval() sin control), ni puertas traseras.
Requisitos legales
Licencia GPL o compatible: Todo el código debe estar bajo la licencia GNU GPL v2 o superior.
Sin contenido comercial cerrado: No se permite incluir código que requiera pago para funcionar (puedes enlazar a versiones premium, pero no bloquear funciones básicas).
Sin spam ni rastreadores ocultos: No se permite insertar enlaces ocultos, publicidad engañosa ni recopilación de datos sin consentimiento.
🔍 Revisión y proceso de envío
Accede con tu cuenta WordPress.org: https://wordpress.org/plugins/developers/add/
Sube el archivo ZIP del plugin.
El equipo de revisión lo analiza manualmente (tarda entre 1 y 10 días).
Si se aprueba, recibirás acceso SVN para subir nuevas versiones y gestionar tu plugin.
Buenas prácticas recomendadas
Usa funciones y APIs oficiales de WordPress.
Documenta bien tu código.
Evita conflictos con otros plugins (prefijos únicos).
Incluye soporte básico y actualizaciones periódicas.
Como redactar el readme.txt
Redactar un buen readme.txt para tu plugin de WordPress.org es clave para que sea aprobado y bien entendido por los usuarios. Este archivo describe tu plugin, sus funciones, requisitos y cómo usarlo. Aquí te explico cómo estructurarlo correctamente:
📄 Estructura básica del readme.txt
=== Nombre del Plugin ===
Contribuye a una breve descripción clara y atractiva.
== Descripción ==
Explica qué hace tu plugin, para quién está pensado y qué problema resuelve. Puedes usar varios párrafos.
== Instalación ==
1. Sube los archivos del plugin al directorio `/wp-content/plugins/`.
2. Activa el plugin desde el menú "Plugins" en WordPress.
3. (Opcional) Configura los ajustes desde el panel de administración.
== Preguntas frecuentes ==
= ¿Este plugin es compatible con multisite? =
Sí, funciona en instalaciones multisite.
= ¿Requiere configuración adicional? =
No, pero puedes personalizarlo desde el panel de ajustes.
== Capturas de pantalla ==
1. Vista del panel de configuración.
2. Ejemplo de resultado en el frontend.
== Changelog ==
= 1.0 =
* Versión inicial del plugin.
== Upgrade Notice ==
= 1.0 =
Primera versión estable.
== Tags ==
login, seguridad, personalización, acceso
== Requisitos ==
* WordPress 5.5 o superior
* PHP 7.4 o superior
== Licencia ==
Este plugin está bajo la licencia GPLv2 o superior.
✅ Consejos clave
Usa etiquetas claras para que el plugin sea fácil de encontrar.
Incluye capturas de pantalla si es visual.
Mantén el changelog actualizado con cada versión.
Asegúrate de que el texto esté en inglés si lo vas a subir al repositorio oficial (aunque puedes incluir traducciones).
Plugin Contador de Visitas Simple
Este es un Plugin para WordPress, que cuenta las visitas a las entradas y las páginas de un sitio web construido con WordPress.
El mantenimiento de un VPS con Debian 10 incluye actualizaciones de seguridad, limpieza del sistema, monitoreo de recursos y copias de seguridad regulares. Estas tareas aseguran estabilidad, rendimiento y protección frente a amenazas.
🔧 Mantenimiento básico recomendado
1. Actualización del sistema
Mantén tu VPS al día con los últimos parches:
bash
apt update && apt upgrade -y && apt autoremove -y
También puedes usar apt dist-upgrade para actualizaciones más profundas.
2. Limpieza de paquetes y caché
Elimina paquetes innecesarios y limpia la caché:
bash
apt clean && apt autoclean
3. Verificación del sistema de archivos
Comprueba y repara errores:
bash
fsck -Af -V
(Usar con precaución, preferiblemente en modo de recuperación)