He leído otras publicaciones sobre cómo hacer esto, pero estoy buscando una solución que funcione. También soy consciente de que puedo personalizar los textos del sitio, pero esa no es una solución para este caso de uso.
¿Qué te gustaría que se hiciera?
Una forma de redirigir a una URL en caso de página prohibida y a otra URL en caso de página no encontrada. Puede ser un plugin, un componente de tema, algo de JavaScript que pegue en admin > customize > theme > custom css/html, u otra solución. No quiero configurar Apache o Nginx. Las URL no cambiarán a menudo y se pueden codificar.
¿Cuándo lo necesitas hecho?
En las próximas dos semanas.
¿Cuál es tu presupuesto, en USD, que puedes ofrecer para esta tarea?
Abierto a sugerencias.
*** Si estás interesado, envíame un mensaje privado. No publiques aquí diciendo “Lo haré”.
Disculpas, por favor publica aquí entonces. He tenido casos en el pasado donde alguien publicó públicamente “Lo haré”, pero no quería contratar a esa persona. Otros candidatos (mejores) no se presentan porque el trabajo está ocupado.
Lo he intentado, pero no veo ninguna diferencia. Si voy a /foo con él activado o desactivado, obtengo lo mismo. (He personalizado el texto para intentar darles una pista de por qué, pero eso no es muy satisfactorio).
Pero /foo no existe, así que ese es el mensaje correcto (puedes personalizarlo para que diga solo “no existe” y eliminar “no encontrado” como escribí mientras escribías tu respuesta)
Quieres cambiar el comportamiento para page-forbidden. Eso funciona como pides, pero dado que el foro, creo que es para esto, requiere inicio de sesión, no puedo dar un ejemplo en tu sitio.
Necesitarías cambiar el texto para este para que diga solo “Esa página no existe” ya que está escrito para el valor predeterminado de la configuración.
Estoy de acuerdo, y (erróneamente, como señalas) personalicé ambos textos de la misma manera, lo cual no es realmente correcto. Pero todavía no creo que pueda hacer que haga lo que quiero. Más detalles sobre el caso de uso:
Tenemos varias categorías que tienen requisitos de acceso especiales. Ejemplos:
Para ver la categoría X, tienes que completar un formulario de acuerdo de confidencialidad (NDA) que te incluye en el grupo-x.
Para ver la categoría Y, tienes que aceptar una política de Discourse, que te incluye en el grupo-y.
Para ver la categoría Z, tienes que pasar por algún otro trámite, que te incluye en el grupo-z.
Tenemos una publicación específica, “Cómo unirse a un subgrupo del foro”, que explica todas estas reglas y tiene enlaces a los formularios.
A veces, un usuario recibe un enlace a un tema de otro usuario, pero no puede acceder a él, quizás porque no ha firmado un acuerdo de confidencialidad. Discourse los lleva a una página de “Prohibido”, pero no explica cómo pueden obtener acceso (es decir, a través de qué trámite deben pasar). He personalizado el texto para intentar dirigirlos a “Cómo unirse a un subgrupo del foro”, pero el resultado no es muy satisfactorio. (Ver captura de pantalla anterior).
Veo dos enfoques:
En la página de “Prohibido”, redirigirlos a “Cómo unirse a un subgrupo del foro”, y dejar que lean todas las reglas y, con suerte, deduzcan a través de qué trámite deben pasar para ver el tema deseado.
Sería mucho mejor si pudiéramos decir explícitamente “No tienes permiso para ver ese tema porque necesitas firmar este acuerdo de confidencialidad”. Eso requeriría una configuración que mapee categorías a publicaciones, por ejemplo, categoría X → publicación con formulario de acuerdo de confidencialidad. Hay 15-20 de esas reglas/mapeos.