Adding the noopener attribute to CommonMark
Over on Notist I’m using the PHP League CommonMark Markdown parser to convert Markdown to HTML.
One recommendation that Google’s Lighthouse audits recommend is that
rel="noopener" be added to any external links. There’s an entire article explaining why this is a positive move for both security and performance.
I initially couldn’t figure out how best to do this, but it turns out it’s really simple. CommonMark enables you to specify and register custom renderers and they even have an example of one for adding a class to external links. All I needed to do was slightly modify this to add the
rel="noopener" attribute and I was away.
Posting this here, because when I searched I couldn’t find anything interesting about CommonMark, PHP, and
noopener so I hope it might help someone else.