提示のコードでできています。
可能性として途中に ' があるので、syntax エラーになっているのかもしれないです。
php
1<?php
2$str = "{f5af6c318bd4aa03bc4879fef05ed88a786abba31c5b34dab541455b9b6de3eb}'))) AND ( ( wp_postmeta.meta_key";
3$res = str_replace('))) AND ( (', '))) OR ( (', $str);
4echo $res;
5
6// {f5af6c318bd4aa03bc4879fef05ed88a786abba31c5b34dab541455b9b6de3eb}'))) OR ( ( wp_postmeta.meta_key