Hola buenos dias.
Nos gustaria prescindir del plugin Hide Login y poder cambiar la URL de inicio de sesion y acceso a Wordpress a traves del archivo htaccess, hemos leido recientemente un articulo que indica que esto se puede realizar en servidores Apache mediante la inserccion en el htaccess del siguiente codigo;
# BEGIN Ocultar URL login WP <IfModule mod_rewrite.c> RewriteEngine On RewriteRule ^tu_url_personalizada/?$ /wp-login.php?tu_clave_secreta [R,L] RewriteCond %{HTTP_COOKIE} !^.*wordpress_logged_in_.*$ RewriteRule ^tu_url_personalizada/?$ /wp-login.php?tu_clave_secreta&redirect_to=/wp-admin/ [R,L] RewriteRule ^tu_url_personalizada/?$ /wp-admin/?tu_clave_secreta [R,L] RewriteCond %{SCRIPT_FILENAME} !^(.*)admin-ajax\.php RewriteCond %{HTTP_REFERER} !^(.*)tudominio.com/wp-admin RewriteCond %{HTTP_REFERER} !^(.*)tudominio.com/wp-login\.php RewriteCond %{HTTP_REFERER} !^(.*)tudominio.com/tu_url_personalizada RewriteCond %{QUERY_STRING} !^tu_clave_secreta RewriteCond %{QUERY_STRING} !^action=logout RewriteCond %{QUERY_STRING} !^action=rp RewriteCond %{QUERY_STRING} !^action=postpass RewriteCond %{HTTP_COOKIE} !^.*wordpress_logged_in_.*$ RewriteRule ^.*wp-admin/?|^.*wp-login\.php /not_found [R,L] RewriteCond %{QUERY_STRING} ^loggedout=true RewriteRule ^.*$ /wp-login.php?tu_clave_secreta [R,L] </IfModule> # END Ocultar URL login WP
La cuestion es que lo hemos probado pero no nos funciona, tendriamos que desactivar y borrar primero el plugin Hide Login, modificar algun codigo en el archivo
wp_admin...
Conoceis de la existencia de otro codigo con el que podamos realizar esto a traves de htaccess?
Muchas gracias
Saludos
Jose Carlos
Contenido solo visible a usuarios registrados
Que tal Jose Carlos,
Sin duda que el uso del plugin WPS Hide Login es el método mas sencillo y efectivo para este propósito sin embargo puede que las reglas que estas estableciendo desde el archivo htaccess no funcionen de forma correcta
Por otro lado si el archivo de htaccess sufre una actualización forzada o automática puede que las reglas puedan perderse, sin embargo puedes probar lo que explicamos en el siguiente articulo
Saludos!
Hola Bruno buenos dias y Feliz Año.
Respecto al enlace que me comentas tengo varias dudas, en donde indica;
Indicais la siguiente directiva ;
<Files wp-login.php> ErrorDocument 401 default AuthUserFile /home/<user>/.htpasswds/.htpasswd_user AuthName "Acceso restringido" AuthType Basic Require valid-user </Files>
Pero no entiendo como con esta directiva se cambia la URL de acceso? Ademas tambien indica;
Una de estas formas es mediante una directiva en el archivo .htaccess para impedir que wp-login.php pueda ser accesible si no gestionas usuarios en WordPress
y no se hace necesario disponer de formulario de acceso para estos usuarios (muy recomendado),
Que significa que con esta directiva no es necesario la URL de acceso o realizar el Login de acceso a Wordpress?
Muchas gracias
Saludos
Jose Carlos
Hola Jose Carlos.
.- Accede a la carpeta donde tienes la instalación y descarga el archivo wp-login.php paar tener una copia
.- Edita el archivo wp-login.php
.- Busca cada instancia que contenga wp-login y lo modificas por wp-new-signin.php o el nombre que quieras que tenga el nuevo acceso:
.- Modifica también las líneas que contengan wp-admin
Acuérdate que tienes que cambiarlo en cada línea donde aparezca.
.- Renombra el archivo wp-login.php por new-signin.php o el nombre que le pusiste para el nuevo acceso
.- Edita el archivo functions.php y añade lo siguiente:
add_filter( 'login_url', 'custom_login_url', PHP_INT_MAX );
function custom_login_url( $login_url ) {
$login_url = site_url( 'wp-new-signin.php', 'login' ); return $login_url; }
Si le pusiste otro nombre al archivo tendrás que modificar wp-new-signin.php por el nombre que le pusiste
.- Vacia la cache de Varnish si la utilizas y lo revisas.
Un Saludo