WordPress: reescriba u oculte wp-json en url

1 minuto de lectura

avatar de usuario
Ignas Damunskis

me gustaría esconderme /wp-json/ de url ya que no quiero que nadie sepa que el sitio web está construido en wordpress. Intenté reescribir las reglas en .htaccesspero /api solo redirige a /wp-json así que esto no es lo que realmente quiero.

RewriteRule ^api/(.*)$ /wp-json/$1 [R,L]

Estos no están funcionando en absoluto:

RewriteRule ^api$ /wp-json [L]
RewriteRule ^api/(.*)$ /wp-json/$1 [L]

También probé el evento de enlace site_url, pero desafortunadamente no funciona en absoluto:

add_filter('site_url', 'api_filter', 10, 3);
function api_filter($url, $path, $orig_scheme) {
    $old  = array('/(wp-json)/');
    $new  = array('api');
    return preg_replace($old, $new, $url, 1);
}

Puedes usar el filtro rest_url_prefix para hacer la reescritura:

add_filter( 'rest_url_prefix', function() {
    return 'api';
});

Recuerde visitar Configuración-> Enlaces permanentes para eliminar los enlaces permanentes después de agregar el código anterior a functions.php

  • ¡Brillante! ¡Muchas gracias!

    – Ignas Damunskis

    17 de agosto de 2016 a las 11:21

  • ¿Es posible reescribir toda la parte wp-json/wp/v2/? El filtro rest_url_prefix solo reescribe wp-json, ¿correcto? Actualmente estoy creando una aplicación y me gustaría que la URL de la API sea estática porque cuando cambia (por ejemplo, wp-json/wp/v3) mi aplicación se rompe y para cada cambio es necesaria una actualización de la aplicación.

    – Vespino

    4 de mayo de 2017 a las 13:18

¿Ha sido útil esta solución?

Esta web utiliza cookies propias y de terceros para su correcto funcionamiento y para fines analíticos y para mostrarte publicidad relacionada con sus preferencias en base a un perfil elaborado a partir de tus hábitos de navegación. Al hacer clic en el botón Aceptar, acepta el uso de estas tecnologías y el procesamiento de tus datos para estos propósitos. Configurar y más información
Privacidad