Reescribir URLs externas

Disfruto usando la función de Discourse que convierte automáticamente las palabras observadas en enlaces. Sin embargo, también estoy buscando una forma de convertir automáticamente enlaces externos, principalmente para insertar enlaces de afiliados (que no sean de Amazon). Intenté lograr esto usando la opción de expresiones regulares en palabras observadas, pero no parece funcionar para los enlaces. ¿Alguien tiene alguna sugerencia?

¡Gracias!

¿Has probado el componente temático Auto-Linkify Words? Creo que tiene capacidades de expresiones regulares adicionales en comparación con Palabras vigiladas.

1 me gusta

Sí, pero sin éxito.

1 me gusta

El plugin Discourse Affiliate soporta Amazon y el sitio francés ldlc.com, si es algo de utilidad general, una PR siempre es bienvenida.

Si no, podrías usar este plugin como referencia de lo que quieres lograr.

3 Me gusta

Las expresiones regulares son difíciles. ¿Quizás deberías compartir lo que intentaste?

1 me gusta

:100: :sweat_smile:

Lo que intenté con el ejemplo de URL de Google:

/(https?:\\/\\/)?(www\\.)?google\\.com/
/(https:\\/\\/)?(www\\.)?((google)?\\.com)/

1 me gusta

Eso no es suficiente para depurar. Eso coincidirá (¿debería?) con una URL de Google, pero ¿qué intentas reemplazar?

Solo necesito que coincida con el dominio/subdominio, no con todas las páginas. Aquí está lo que agregué en el plugin linkify:

/(https?:\\/\\/)?(www\\.)?example\\.com/, https://example.com/affiliateid

He progresado un poco, parece que podría haber un conflicto con la configuración enable markdown linkify.

Esta configuración tiene una ventaja sobre el componente.

Dejaré que Camille investigue, pero puede que esto ayude a resolver este problema.

2 Me gusta

A mí también me lo parece. Creé un reemplazo para https://www.digitalocean.com/ → https://m.do.co/c/a5bf212d9a92/ y si enable markdown linkify está activado, no funciona, y si está desactivado, sí. Lo que realmente me gustaría es que reescribiera el enlace.

Un componente temático podría ser una forma de hacerlo.

1 me gusta

Entonces, tal vez la solución más fácil sea hacer un fork del Discourse Affiliate plugin y añadir mis enlaces de afiliado personalizados.

Eso es probablemente excesivo. Si solo quieres reescribir algunas URL, no necesitas mucho. Tengo un componente temático que reescribe algunos one-boxes.

Tengo un componente temático que encuentra one-boxes de un cierto dominio y los reescribe como <iframe> apropiados para ese sitio. No debería ser demasiado difícil (para alguien con habilidades tan escasas como las mías) cambiarlo para reescribir tus enlaces.

Básicamente, solo necesitas cambiar esto:

La principal diferencia con un enfoque como el de Discourse Affiliate es que cambia el enlace en el contenido procesado, por lo que también funcionará fuera de la aplicación web, como en correos electrónicos o si se utiliza un cliente diferente (muy, muy raro). Es algo a tener en cuenta.

1 me gusta

¡Buen punto! Y cambiar las publicaciones publicadas requiere un plugin.

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.