我正在为我的多语言 Wordpress 网站使用 qTranslateX 插件。我设置了 2 种语言:en & fr。我想知道如何仅针对特定语言以编程方式更新帖子名称?我到处搜索,但没有找到解决方案。
一种解决方法是使用 preg_replace 函数,它看起来像这样(假设帖子名称是:My [en]English[fr]French[:] post name)
$start = '\[en\]';
$end = '\[';
$original_name = 'My [en]English[fr]French[:] post name';
$replace_with = 'Awsome english new';
$new_post_name = preg_replace('#('.$start.')(.*)('.$end.')#si', '$1'.$replace_with.'$3', $original_name ,1);
echo $new_post_name ;
这会输出以下不正确的字符串,因为法语文本已被删除,因此 preg_replace 不限制第一次出现:
我的 [zh]Awsome 英文新 [:] 帖子名称
预期的输出是:
我的 [en]Awsome 英文新 [fr]French[:] 帖子名称
我有点卡在这里...