Verwenden von preg_replace () mit dem content_filter

Ich versuche, eine PHP-Abfrage am Ende der Links von meiner Website an eine Sponsor-Website mit dem Filter_content und preg_replace() anhängen. Ich habe meinen Regex-Ausdruck auf regexr.com getestet und es funktioniert auch Ich habe print_r() , um zu testen, dass die function aufgerufen wird, aber aus irgendeinem Grund werden die Verknüpfungen in der Praxis nicht geändert.

Hier ist der Code, mit dem ich Probleme habe

 add_filter('the_content', 'linkAppend'); function linkAppend($content) { global $referalString; preg_replace('/\/\/(www|launch)?\.?(solarwinds\.com)\/[^"]*/g','$&?cmp='.$referalString, $content); return $content; } 

Wenn mir jemand in die richtige Richtung zeigen oder mich wissen lassen könnte, wo ich falsch gelaufen bin, würde ich es sehr schätzen.

Solutions Collecting From Web of "Verwenden von preg_replace () mit dem content_filter"

Es stellte sich heraus, dass ich mehrere Probleme hatte, @bonger wies auf den ersten hin und dann fand und triggerse ich Probleme mit der globalen Flagge auf dem regulären Ausdruck, der in php nicht gültig ist und ich verbuchte keine Links ohne / nach der .com . Der endgültige Fix sieht folgendermaßen aus:

 add_filter('the_content', 'linkAppend'); function linkAppend($content) { global $referalString; $content = preg_replace('/\/\/(www|launch)?\.?(solarwinds\.com)\/?[^"]*/m','$0?cmp='.$referalString, $content); return $content; }