hola, hace 4 meses me ayudaron a bloquear y esconder mi pagina web por completo con usuario y contraseña. esto desde cpanel, como pueden ver en esa conversación, quedo todo bien. hay forma de excluir una pagina en concreto, y que esa quede expuesta y sin protección?? gracias
Contenido solo visible a usuarios registrados
Hola Eugenio,
Inicialmente como se configuró el bloque del sitio, entiendo que lo realizaste mediante las opciones de wepanel
Si es así ten en cuenta que aquí estás añadiendo protección a todo el directorio del sitio web y no una página en específico, en este caso si quieres tener una página visible necesitas bloquear el sitio web de otra forma como por ejemplo utilizando algún plugin como el que se mencionó antes, ya que actualmente el sitio no es accesible si no se tiene la clave y contraseña que configuraste
→ https://wordpress.org/plugins/password-protected/
Verifícalo y coméntanos si es esta la duda que nos comentas, si no es así si es posible indícanos que página quieres sea visible para verificar con mayor detalle lo que nos comentas.
Un Saludo
hola, ya vi el plugin, pero es muchísimo dinero para pagar si solamente quiero bloquear todo el sitio y excluir ciertas paginas. no me sirve ese plugin para algo tan sencillo que quiero.
que otro plugin u otra opciones hay?
gracias
Hola Eugenio.
Desde WePanel solo puedes proteger toda la web.
Puedes probar con esto pero no te aseguro que funcione:
function proteger_todo_sitio_excluyendo_una_pagina() {
// ID de la página que NO quieres proteger
$pagina_excluida = 1017; // Cambia este ID por el de tu página específica
// Verifica si estamos en la página excluida
if (is_page($pagina_excluida)) {
return; // Permite el acceso sin protección
}
// Comprueba si el usuario ya ingresó la contraseña
if (!isset($_SERVER['PHP_AUTH_USER'])) {
header('WWW-Authenticate: Basic realm="Protección con contraseña"');
header('HTTP/1.0 401 Unauthorized');
echo 'Por favor, introduce la contraseña para acceder al sitio.';
exit;
} else {
// Verifica si las credenciales son correctas
$usuario_correcto = 'usuario'; // Cambia por tu usuario
$contraseña_correcta = 'contraseña'; // Cambia por tu contraseña
if ($_SERVER['PHP_AUTH_USER'] !== $usuario_correcto || $_SERVER['PHP_AUTH_PW'] !== $contraseña_correcta) {
header('HTTP/1.0 401 Unauthorized');
echo 'Usuario o contraseña incorrectos.';
exit;
}
}
}
add_action('template_redirect', 'proteger_todo_sitio_excluyendo_una_pagina');
Tienes que modificar $pagina_excluida = 1017 por el ID de la página que quieres que se muestre y añadir el usuario y la contraseña que quieras para acceder a las demás páginas.
Acuérdate de vaciar las caches que tengas antes de probarlo.
Otra opción es que protejas las páginas/posts con contraseña excepto la que quieres que se muestre:
Un saludo