Skip to content
This is an unmaintained snapshot of the Astro v4 docs. View the latest docs.

Add icons to external links

Using a rehype plugin, you can identify and modify links in your Markdown files that point to external sites. This example adds icons to the end of each external link, so that visitors will know they are leaving your site.

  • An Astro project using Markdown for content pages.
  1. Install the rehype-external-links plugin.

    Terminal window
    npm install rehype-external-links
  2. Import the plugin into your astro.config.mjs file.

    Pass rehypeExternalLinks to the rehypePlugins array, along with an options object that includes a content property. Set this property’s type to text if you want to add plain text to the end of the link. To add HTML to the end of the link instead, set the property type to raw.

    // ...
    import rehypeExternalLinks from 'rehype-external-links';
    export default defineConfig({
    // ...
    markdown: {
    rehypePlugins: [
    [
    rehypeExternalLinks,
    {
    content: { type: 'text', value: ' 🔗' }
    }
    ],
    ]
    },
    });
Contribute

What’s on your mind?

Create GitHub Issue

Quickest way to alert our team of a problem.

Community