我需要一个很好的解决方案,能够在wordpress帖子中对<p>
标签进行不同的设置。更具体地说,我需要区分段落和图像。 Wordpress只包含<P>
标记中的所有新行。
以下是一些可能性:
<p>
代码,并在适当的位置添加<P>
代码(文字周围)<P>
标签上添加一个包含文字我不希望博客贡献者必须手动执行某些操作(添加div标签),我希望在后台完成此操作。
我知道其他人对此有疑问。请让我知道你的想法!
谢谢大家, 马特穆勒
答案 0 :(得分:3)
您可以在主题的functions.php
文件或插件中创建类似下面的内容过滤器功能。请注意,这将为帖子正文中的任何段落添加一个类,该段具有图像作为其第一个子元素(不提供任何文本),这可能不是您想要的确切行为。
function my_content_filter($content) {
return preg_replace('|<p>(<img[^<]*)</p>|i', '<p class="foo">${1}</p>', $content);
}
add_filter('the_content', 'my_content_filter');
答案 1 :(得分:0)
function format_content($content) {
$contentArr = explode("\n", $content);
$output = "";
foreach ($contentArr as $entity) {
$entity = trim($entity);
$numChars = strlen($entity);
if(substr($entity, 0, 1) != "<" && substr($entity, $numChars-1) != ">" && $numChars > 0)
$entity = '<p>'.$entity.'</p>';
$output .= $entity;
}
return $output;
}
我确定我会碰到一些极端情况,但暂时效果很好..它使用get_the_content()来阻止添加p标记,然后将内容传递给此函数,该函数包装不以p标签中的标签开头的杂散文本,然后返回。
答案 2 :(得分:0)
如何使用jQuery的unwrap简单插件? http://wordpress.org/extend/plugins/unwrap-images/
免责声明:我确实根据自己的需要开发了这个插件。