我遇到了一些用自定义代码替换旧的短代码(由与最新版本的Wordpress不兼容的插件生成)的问题。
我的想法是在functions.php中编写一些代码以检测旧的插件文本[ultimatesocial networks= “facebook, twitter, google, pinterest, whatsapp, mail” align=”left”]
并用新的[social]
对其进行更改。
这是我尝试过的代码:
function replace_shortcode( $text ) {
$replace = array(
'ultimatesocial networks= “facebook, twitter, google, pinterest, whatsapp, mail” align=”left”' => 'social',
);
$text = str_replace( array_keys($replace), $replace, $text );
return $text;
}
add_filter( 'the_content', 'replace_shortcode' );
add_filter( 'the_excerpt', 'replace_shortcode' );
它不起作用。我认为问题在于旧的简码中的引号,但在数组中使用转义字符也无济于事。
有什么主意吗?谢谢您的帮助!