PHP批量替换wordpress文章中的文本内容(带条件判断)

之前发过一篇 《批量替换wordpress文章中的内容的代码》,今天来分享一段更复杂一点的代码,同样是文章中批量替换文本内容的功能,但是带上了条件判断。

/*批量替换文章中的代码或字段*/
add_filter('the_content', 'replace_text_wps');
add_filter('the_excerpt', 'replace_text_wps');
function replace_text_wps($text){

		if ( in_category( array (3,9,11) ) ) {
				$replace = array(
				'style="float:right' => 'style="display: none',
				'style="max-width: 750px"' => '',
				'<div class="bbp-signature">' => '<div class="bbp-signature"><img src="https://www.example.com/c51a3658ly1fk34jdajlrj205k05k0su.jpg"/>',
					);
			}
		elseif ( in_category(2) ) {
				$replace = array(
				'style="float:right' => 'style="display: none',
				'style="max-width: 750px"' => '',
				'<div class="special-content">' => '<div class="special-content"><img src="https://www.example.com/c51a3658ly1fk3602yukmj205k05kt8u.jpg"/>',
					);
			}
		elseif ( in_category(10) ) {
				$replace = array(
				'style="float:right' => 'style="display: none',
				'style="max-width: 750px"' => '',
				'<div class="special-content">' => '<div class="special-content"><img src="https://www.example.com/c51a3658ly1fk369gwqftj205k05k0sq.jpg"/>',
					);
			}
		else {
				$replace = array(
				'style="float:right' => 'style="display: none',
				'style="max-width: 750px"' => '',
				'<div class="special-content">' => '<div class="special-content">',
					);
			}
    $text = str_replace(array_keys($replace), $replace, $text);
    return $text;
}

这是针对wordpress栏目有选择性地针对 special-content 这个DIV做了替换,在不同的栏目下,为这个DIV附加了不同的图片。

发表评论

电子邮件地址不会被公开。 必填项已用*标注