¿Archivo .htaccess predeterminado para WordPress?
Mis archivos .htaccess
están interceptando el archivo .htaccess
de WordPress.
¿Qué módulos y qué configuraciones (especificadas por .htaccess
) son necesarias para que WordPress funcione? En otras palabras, ¿dónde puedo encontrar el archivo .htaccess
predeterminado de WordPress?

Aquí está el código predeterminado para ese archivo.
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
Puedes verificarlo aquí para el archivo htaccess predeterminado.
http://codex.wordpress.org/Using_Permalinks.
Gracias. Espero que esto ayude un poco.

Por favor, vea el chat aquí sobre esto.

!!! La respuesta está obsoleta. Use la nueva: https://wordpress.stackexchange.com/a/250918/33667

Enlace actualizado: https://wordpress.org/support/article/using-permalinks/

WordPress no contiene .htaccess
en forma de archivo.
Las reglas son escritas en el archivo por la función save_mod_rewrite_rules()
y son generadas por $wp_rewrite->mod_rewrite_rules()
.
Ten en cuenta que la instalación multisitio tiene reglas diferentes (más complejas) y parece ser manejada de manera diferente.

Utiliza la última versión del archivo .htaccess
por defecto

Utiliza el canal #wordpress de Freenode para encontrar la documentación apropiada, generalmente en el /topic
. Allí encontré la clave Class WP_Rewrite
aquí, el wordpress.org oficial en el mejor de los casos es confuso y comercial. De todas formas, no mezcles las reglas de reescritura de Apache con las reglas de reescritura de WP aunque probablemente el nombre de WP provenga del equivalente de Apache.
La API WP_Rewrite establece
Puedes agregar reglas para activar la vista y el procesamiento de tu página usando este componente. La funcionalidad completa de un controlador frontal no existe, lo que significa que no puedes definir cómo se cargan los archivos de plantilla basándose en las reglas de reescritura.
así que debes usar la API para hacer los cambios, no estoy totalmente seguro de lo que significa pero creo que significa que no puedes confiar en tus archivos .htaccess codificados manualmente -- ¡las cosas pueden cambiar incluso con diferentes versiones de WP! Así que usa la API.
interceptando
El código aquí tiene algunas condiciones si el archivo .htaccess existe -- no estoy 100% seguro de sus inferencias porque no está bien documentado y no puedo entender la nomenclatura allí, pero el mensaje central es probablemente que la forma segura de mantener las reglas de reescritura es usar la API WP_Rewrite, WP puede cambiar en el futuro.
Por ejemplo, una simple reescritura de Apache RewriteRule ^hello$ Layouts/hello.html [NC,L]
es aparentemente algo como add_rewrite("^hello$", "Layouts/hello.html")
, no lo he probado pero intenté seguir la API a continuación:
add_rewrite_rule (línea 19)
Agregar una regla de reescritura directa.
ver: WP_Rewrite::add_rule() para una descripción detallada.
desde: 2.1.0
void add_rewrite_rule (string $regex, string $redirect, [string $after = 'bottom'])
string $regex: Expresión Regular para comparar contra la solicitud.
string $redirect: Página a la que redirigir.
string $after: Opcional, por defecto es 'bottom'. Dónde agregar la regla, también puede ser 'top'.
Relacionado
http://pmg.co/a-mostly-complete-guide-to-the-wordpress-rewrite-api
Gracias a toscho por su ayuda aquí, algunas conversaciones en el chat.

Estoy bastante seguro de que he malinterpretado algo aquí, por favor, revisa esta conversación aquí. ¿Se interceptó porque mi blog estaba a nivel raíz, es decir, algo como www.hello.com/blog/?
