Søg og erstat ord med preg_replace, mit gennemløb virker ikke på teksten
Hej Jeg har et problem med preg_replace eller tror ikke det er den men en del i min kode der går at den ikke køre alle mine arrays igennem, så tekten bliver ændre alle de steder hvor jeg har et replace ord.Den finder kun et ord i teksten og det er det første der bliver ændret så koden virker der.
Koden:
global $product;
$content = [];
$patterns1 = [];
$replacements1 = [];
$patterns = [];
if (($handle = fopen("https://teenstyle.se/wp-content/plugins/teenstyle-word-replacer/Mappe1.CSV", "r")) !== FALSE) {
while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
$comma_separated = str_replace(';', ', ', $data);
$mapArray = array_map('utf8_encode', $comma_separated);
$arrayTostring = implode(', ', $mapArray);
$stringToArray = explode(', ', $arrayTostring);
$country = $stringToArray[0];
$orginalWord = $stringToArray[1];
$replaceWord = $stringToArray[2];
$product_full_description = $product->get_description();
$patterns[] = $orginalWord;
$replacements[] = $replaceWord;
foreach (array_combine($patterns, $replacements) as $patterns2 => $replacements2) {
$patterns1[] = "/".$patterns2."/";
$replacements1[] = $replacements2;
$content[] = preg_replace($patterns1, $replacements1, $product_full_description);
}
return implode("", $content);
}
}
fclose($handle);
}
Med venlig hilsen
Morten