Agregar iconos a los enlaces externos
Usando un plugin de rehype, puedes identificar y modificar los enlaces en tus archivos Markdown que apuntan a sitios externos. Este ejemplo agrega iconos al final de cada enlace externo, para que los visitantes sepan que están saliendo de tu sitio.
Prerrequesitos
- Un proyecto de Astro que utiliza Markdown para las páginas de contenido.
Receta
-
Instala el plugin
rehype-external-links.Terminal window npm install rehype-external-linksTerminal window pnpm add rehype-external-linksTerminal window yarn add rehype-external-links -
Importa el plugin en tu archivo
astro.config.mjs.Pasa
rehypeExternalLinksal arrayrehypePlugins, junto con un objeto de opciones que incluya una propiedadcontent. Si deseas agregar texto sin formato al final del enlace, establece eltypede esta propiedad comotext. Para agregar HTML en lugar de texto al final del enlace, establece eltypede la propiedad comoraw.... import rehypeExternalLinks from 'rehype-external-links';export default defineConfig({// ...markdown: {rehypePlugins: [[rehypeExternalLinks,{content: { type: 'text', value: ' 🔗' }}],]},});
El valor de la propiedad content no se representa en el árbol de accesibilidad. Por lo tanto, es mejor dejar claro que el enlace es externo en el contenido que lo rodea en lugar de depender únicamente del icono.