我在帖子中使用此代码在指定数量的段落之后放置代码,但除了结束{I}之外我还不知道如何制作代码{0}也认识</p>
谢谢!
</h3>
答案 0 :(得分:0)
想出一个可能不优雅的解决方案,但它确实有效。它的作用是在每个第二段之后添加一个额外的段落,如果它没有跟随H3。
function adify_paragraphs($content) {
// Splitting the content into an array of paragraphs and headers.
preg_match_all('/<h3>.*<\/h3>|<p>.*<\/p>/imU', $content, $matches);
$count = count($matches[0]);
if (empty($count)) {
// Nothing to work with.
return $content;
}
$p_count = 0;
for ($i = 0; $i < $count; $i++) {
// Increment the paragraph counter if we meet a paragraph.
// Otherwise, reset it.
if (strpos($matches[0][$i], '<p>') !== FALSE) {
$p_count++;
} else {
$p_count = 0;
}
if ($p_count == 2 && strpos($matches[0][$i+1], '<h3>') === FALSE) {
// Insert the additional code and reset the counter.
$content = str_replace($matches[0][$i], $matches[0][$i].'<p>AD!</p>', $content);
$p_count = 0;
}
}
return $content;
}
如果您需要以不同的方式插入广告,请将2
更改为任何其他号码(不幸的是,您的代码不太清楚)。
您可以在此处看到它:https://eval.in/521508