Lista de bloqueo de enlaces de dominios externos

¿Hay alguna forma de evitar que se enlace un dominio específico en absoluto?

El caso de uso es el siguiente: un usuario sigue respondiendo a cualquier tema con enlaces a su sitio web, lo que no es necesariamente malo ni peligroso, pero el resultado es que todas las conversaciones se sienten secuestradas y spam. Después de insistir varias veces con este usuario, el patrón de publicación persiste. Tenga en cuenta que rel="nofollow" no parece evitar dicho comportamiento.

Estoy pensando que eliminar los enlaces por completo, o incluso evitar la publicación cuando aparece el dominio, puede dar un incentivo para contribuir a la conversación en sí misma por sí misma en lugar de escupir enlaces externos todo el tiempo.

Quizás existan otras formas no técnicas de abordar este problema, pero puedo verlo como un problema potencialmente recurrente en todos los foros.

1 me gusta

Una solución rápida puede ser degradar al usuario para que no pueda publicar ningún enlace.

2 Me gusta

Podrías poner el enlace en sí en la lista /admin/customize/watched_words/action/block.

8 Me gusta

La sugerencia de palabras vigiladas de @Firepup650 es útil cuando una variedad de personas publican enlaces a un pequeño número de sitios de spam. Definitivamente es una herramienta útil para tener. En este caso, parece que tienes un usuario que está empujando los límites de lo socialmente aceptable. También podrías considerar una política de autopromoción. Eso podría resolver el problema sin recurrir al bloqueo, que podría parecer una medida exagerada.

Un problema inevitable con las listas de bloqueo es que los infractores persistentes encuentran formas de evitarlas. Una política bien formulada puede crear una norma comunitaria que canalice a los usuarios hacia una actividad más productiva. Y si no, el bloqueo sigue siendo una solución potencial. :wink:

2 Me gusta

De hecho, bloquea el dominio en palabras vigiladas o incluso diviértete un poco. Y haz que reemplace la URL con algo como “Oops NoGo”.

Tenía la misma pregunta también para nombres de dominio cortos, por ejemplo, si quieres bloquear “ent.com”, también necesitas evitar que bloquee “content.com”.

Tener ent.com como palabra vigilada no se activa con content.com. ¿O te he entendido mal?
También puedes usar expresiones regulares para ajustar las palabras vigiladas para las URL que no quieres ver publicadas.

2 Me gusta

gracias, así que si pusieras “ent.com” bloquearía todas las variaciones de “http(s)://ent.com/[url]?” donde url es una secuencia arbitraria.

OK. Creo que necesito usar regexp

2 Me gusta

Gracias por sus respuestas. Recuerdo haber intentado varias formas de vigilar palabras, pero los enlaces no se desvinculan, que yo sepa. ¿Alguien puede proporcionar un ejemplo que funcione?

1 me gusta

Un componente de tema muy básico (cortesía de :robot:) que utiliza una lista de dominios codificada:

<script type="text/discourse-plugin" version="0.8.25">
  api.decorateCookedElement((element) => {

    const domainsToUnlink = ["example.com", "specificdomain.com"];

    const links = element.querySelectorAll("a");

    links.forEach((link) => {
      const url = new URL(link.href);
      if (domainsToUnlink.includes(url.hostname)) {
        const textNode = document.createTextNode(link.textContent);
        link.replaceWith(textNode);
      }
    });
  }, { id: "unlink-specific-domains" });
</script>

2 Me gusta

Solo para que mi cerebro se ponga en marcha.

¿El script convierte un enlace especificado en una versión de texto plano no enlazable del enlace?

¿Podría modificarse para reemplazar el enlace, digamos, con “Prohibido”, tal vez como un enlace a una publicación de reglas con una lista de dominios no permitidos?

1 me gusta

Sí a ambas preguntas :slight_smile:

1 me gusta