Si vas a empezar a trabajar con Wordpress, hay algunos archivos con los que te vas a tener que familiarizar. Estos son .htaccess, robots.txt y wp-config.php para empezar. Aunque los dos primeros no son exclusivos de este CMS, ¿para qué valen y que posibilidades tienen?
Archivo .htaccess de Apache
Un fichero .htaccess, también conocido como archivo de configuración distribuida, es un fichero popularizado por el servidor Apache que permite definir diferentes directivas de configuración para cada directorio sin necesidad de editar el archivo de configuración principal del servidor web.
Los .htaccess no son estrictamente necesarios en un sitio web general. Ese archivo simplemente te permite realizar cambios en la forma en que se comporta el site, como por ejemplo redirigir un enlace inactivo a una nueva URL.
En Wordpress es conveniente trabajar con el archivo que suele estar ubicado en el directorio raíz de la instalación y, normalmente, se trata de un archivo oculto. Es fácilmente modificable con cualquier editor de texto y partiendo de una estructura general (default), estas son algunas de las cosas que se pueden hacer:

Estructura general .htaccess (default)
# BEGIN WordPress
RewriteEngine On
RewriteRule .* – [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /
RewriteRule ^index\.php$ – [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
# END WordPress
.htaccess multisite (v. 3.5+)
# BEGIN WordPress Multisite
# Using subfolder network type: https://wordpress.org/support/article/htaccess/#multisite
RewriteEngine On
RewriteRule .* – [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /
RewriteRule ^index\.php$ – [L]
# add a trailing slash to /wp-admin
RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ – [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) $2 [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(.*\.php)$ $2 [L]
RewriteRule . index.php [L]
# END WordPress Multisite
Forzar SSL con .htaccess
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Forzar SSL con .htaccess en dominio
RewriteEngine On
RewriteCond %{HTTP_HOST} ^mydomain.com [NC]
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
Forzar SSL con .htaccess en carpeta
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(folder1|folder2|folder3) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
Activar compresión GZIP
< IfModule mod_gzip.c >
mod_gzip_on Yes
mod_gzip_dechunk Yes
mod_gzip_item_include file \.(html?|txt|css|js|php|pl)$
mod_gzip_item_include handler ^cgi-script$
mod_gzip_item_include mime ^text/.*
mod_gzip_item_include mime ^application/x-javascript.*
mod_gzip_item_exclude mime ^image/.*
mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.*
< /ifModule >
Redirigir una página a otra
redirect 301 /pagina_inactiva /nueva_página
Indexar con robots.txt
Para indexar una web el archivo robots.txt nos va a facilitar mucho el trabajo. Las funciones principales de este archivo es ralentizar bots, publicar sitemaps o evitar la indexación de ciertos elementos que no queremos que seas rastreados. Igual que en el caso anterior, el archivo parte de una definición muy básica que puede hacerse lo compleja que queramos.
Las directivas que este archivo soporta son: allow, disallow, sitemap y user-agent.
User-Agent
Es obligatorio al menos un por grupo. La directiva especifica el nombre del rastreador del motor de búsqueda al que se aplica la regla. Esta es la primera línea de todos los grupos de reglas.
Disallow
Corresponde a una página o un directorio relacionados con el dominio raíz que no deseas que el usuario-agente rastree. Al menos debe haber una o varias allow o disallow por regla.
Allow
Corresponde a una página o un directorio relacionados con el dominio raíz que el usuario-agente mencionado puede rastrear. Se usa para anular una directiva disallow y permitir el rastreo de un subdirectorio o una página en un directorio no permitido. En el caso de una sola página, especifica el nombre completo de la página como se muestra en el navegador.
Sitemap
Es la ubicación de sitemap para este sitio web. La URL del mapa del sitio debe ser una URL completa; en el caso de Google el bot de rastreo no presupone ni verifica alternativas http/https/. Los mapas del sitio son una buena forma de indicar el contenido que debe rastrear un motor.

Bloquear un bot concreto (Google)
User-agent: Googlebot
Disallow: /
Bloquear búsquedas en Wordpress
User-agent: *
Disallow: /?s=
Disallow: /search
Bloquear temas, plugins y otros elementos de poco interés
User-agent: *
Disallow: /cgi-bin
Disallow: /wp-content/plugins/
Disallow: /wp-content/themes/
Disallow: /wp-includes/
Disallow: /*/attachment/
Disallow: /tag/*/page/
Disallow: /tag/*/feed/
Disallow: /*/feed/
Disallow: /comments/
Disallow: /xmlrpc.php
Disallow: /?attachment_id*
Ralentización de un bot concreto
User-agent: noxtrumbot
Crawl-delay: 20
Bloquear una imagen concreta en Google Imágenes
User-agent: Googlebot-Image
Disallow: /images/mi-foto.jpg
Inhabiltar todo el rastreo menos una carpeta
User-agent: *
Disallow: /
Allow: /public/
Declaración de sitemaps
Sitemap: https://mi-web.com/post-sitemap.xml
Sitemap: https://mi-web.com/page-sitemap.xml
Sitemap: https://mi-web.com/portfolio-sitemap.xml
Sitemap: https://mi-web.com/product-sitemap.xml
Sitemap: https://mi-web.com/category-sitemap.xml
Sitemap: https://mi-web.com/post_tag-sitemap.xml
Sitemap: https://mi-web.com/project-type-sitemap.xml
Sitemap: https://mi-web.com/product_cat-sitemap.xml
Sitemap: https://mi-web.com/product_tag-sitemap.xml
Una vez creado nuestro archivo este puedes subirlo a la ubicación correcta vía FTP o gestor de ficheros de nuestros hosting. Es muy recomendable realizar una comprobación de que el archivo añadido es el correcto. Como tiene una naturaleza púbica, abre una ventana en tu navegador y teclea la ubicación del archivo robots.txt. Por ejemplo, https://mi-web.com/robots.txt
Definir un buen archivo robots.txt es esencial para optimizar nuestro crawl budget.
El archivo de configuración wp-config.php
Por último, el archivo de wp-config.php es el que contiene la configuraciones más esenciales de nuestra instalación de Wordpress. Hoy en día, la instalación de Wordpress suele realizarse mediante un wizard en nuestro propio alojamiento; esto implica la creación y configuración automática de este archivo.
¿Cuándo puede ser útil tocarlo? A no ser que quieras incluir alguna funcionalidad concreta (hay muchas), conocer como funciona y localizar los parámetros asociados a MySQL son muy útiles para una migración o restauración.
Parámetros BBDD de MySQL
/** Nombre de la base de datos */
define(‘DB_NAME’, ‘dbgffdehfebtny’);
/** MySQL usuario de la BBDD */
define(‘DB_USER’, ‘uudfehgvsgd1’);
/** MySQL contraseña de la BBDD */
define( ‘DB_PASSWORD’, ‘3dfn)eb!{+4ilL’ );
/** MySQL servidor*/
define(‘DB_HOST’, ‘localhost’);
¿Contraseña visible? Te invitamos a que investigues como mejorar este punto de seguridad para ahuyentar a los malos. Dudas y quejas…