简介
Metalsmith 是一个简单灵活的静态网站生成器,支持众多插件来实现各种需求。其中,metalsmith-external-links 是一个方便的插件,它可以自动为外部链接添加 rel="noopener" 和 target="_blank" 属性,提高安全性和用户体验。
安装
使用 npm 安装 metalsmith 和 metalsmith-external-links:
npm install metalsmith metalsmith-external-links --save-dev
使用
在配置文件中添加插件,并指定需要处理的路径,如下:
-- -------------------- ---- ------- ----- ---------- - ---------------------- ----- ------------- - ------------------------------------- --------------------- -------------------- ------- -------------- -------- ----------------- --------------- --- ----------------------- --------------- ----- - -- ----- ----- ---- ---
参数说明:
domain
: 你的网站域名或者是其他能代表你网站的字符串。exclude
: 排除的文件或者路径数组,支持 glob 语法。
示例
以下是使用外部链接的示例,假设有一个 markdown 文件:
这是一篇文章,[点击这里](https://github.com) 可以访问 github。
使用 metalsmith-external-links 处理后,将生成的 HTML 文件中自动添加 rel="noopener" 和 target="_blank" 属性:
<p>这是一篇文章,<a href="https://github.com" rel="noopener" target="_blank">点击这里</a> 可以访问 github。</p>
注意事项
在新标签页打开外部链接是一种良好的用户体验,但它也会导致一些安全问题,如恶意网站可以在打开链接的同时,执行一些可怕的操作,如窃取用户的个人信息。因此,rel="noopener" 是一种安全措施,可以防止这种恶意攻击。
结论
metalsmith-external-links 是一个非常有用的插件,可以提高网站的安全性和用户体验。在使用时,需要注意安全性问题,并在配置文件中指定需要处理的路径和排除的文件,以便精确地处理链接。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/60066f3f1d8e776d08040b94