Eliminar index.php de la url en wordpress

Si en las opciones enlaces permanentes sólo os deja estas opciones:

  • https://servisplus.es/plugins-wordpress/?p=123
  • https://servisplus.es/plugins-wordpress/index.php/2015/02/14/pagina-ejemplo/
  • https://servisplus.es/plugins-wordpress/index.php/2015/02/pagina-ejemplo/
  • https://servisplus.es/plugins-wordpress/index.php/archivos/123
  • https://servisplus.es/plugins-wordpress/index.php/pagina-ejemplo/
  • etc…

Si quereis quitar ese molesto index.php, tenéis que añadir una linea de código en el archivo wp-includes/vars.php. Al final de todo el archivo añadid esta línea:

$is_apache = 1;

(verificad antes que vuestro servidor trabaje con apache)

Ya podréis acceder al panel de administrador y en la sección de permalinks os saldrán las diferentes opciones de enlaces permanentes sin el dichoso index.php

Ahora ya salen las opciones así:

  • https://servisplus.es/plugins-wordpress/?p=123
  • https://servisplus.es/plugins-wordpress/2015/02/14/pagina-ejemplo/
  • https://servisplus.es/plugins-wordpress/2015/02/pagina-ejemplo/
  • https://servisplus.es/plugins-wordpress/archivos/123
  • https://servisplus.es/plugins-wordpress/pagina-ejemplo/  (Y esta es la mejor opción para tener un SEO bueno!!-Nombre de la entrada)
  • etc…

 

ACTUALIZACIÓN:

Otra opción es hacer este mismo cambio mediente el archivo .htaccess, mucho cuidado y antes de nada hacer una copia de seguridad de este archivo.

añadiendo esto debajo:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ – [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
RewriteCond %{THE_REQUEST} ^(GET|HEAD)\ /index\.php/[^\ ]+
RewriteRule ^index\.php/(.*)$ /$1 [L,R=301]
</IfModule>

De esta manera tambien forzamos a una redirección 301 a las urls que aun tenga el index.php