markjaquith / WP-Stack

A toolkit for creating professional WordPress deployments
1.11k stars 123 forks source link

Multiple URL replacements on the same line for CDN Plugin #20

Open filipiz opened 10 years ago

filipiz commented 10 years ago

Hi Guys!

I went through a situation here that made me lose a few minutes. The CDN plugin do a preg_replace on the entire rendered page to replace the old urls with the new ones.

The problem was when I had more than one URL to be replaced on the same line. The preg_replace did just one replacement, the first.

So, for example:

<a href="http://url.com/wp-content/uploads/2014/01/img.png"><img  src="http://url.com/wp-content/uploads/2014/01/img.png"></a>

would be replaced with

<a href="http://cdn.com/wp-content/uploads/2014/01/img.png"><img  src="http://url.com/wp-content/uploads/2014/01/img.png"></a>

Note that the href attribute for the a tag was replaced, but not the src for the img. Thats because they are on the same line.