首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >WordPress:检查一个帖子中有多少个元素

WordPress:检查一个帖子中有多少个元素
EN

Stack Overflow用户
提问于 2018-01-26 03:11:11
回答 2查看 156关注 0票数 0

有没有办法检查一篇WordPress文章中有多少像标题(h2,h3,...),段落和链接这样的元素?

目前,我正在使用以下代码:

代码语言:javascript
复制
<?php
    $content = get_the_content();

    $count_h2s = explode('<h2>', $content);
    $h2 = 0;

    foreach ($count_h2s as $count_h2) {
            $h2++;
    }
    echo $h2;
?>

这似乎对头条新闻很有效。但是如果我用它来计算<p>-tags,我得到的结果只有1,即使还有更多。我可以想象这是因为这些标签不在编辑器中,而标题是?!

也许有一种比我的代码更优雅的方法来计算元素数;)

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-01-26 03:17:06

循环不是必需的,请使用PHP函数substr_count

代码语言:javascript
复制
$query = get_post(get_the_ID());    
$content = apply_filters('the_content', $query->post_content);
$p_count = substr_count($content, '<p>');
echo $p_count ;

// Be aware, if there is a more-tag inside the post, this `<p>`-tag wouldn't count!

应该很容易将其用于其他标记,例如...

票数 1
EN

Stack Overflow用户

发布于 2018-01-26 03:29:13

看起来你被wordpress用来自动将换行符转换成<p>标签的过滤器抛弃了。换行符不在编辑器中,因为它们是在事后通过过滤器添加的。https://codex.wordpress.org/Function_Reference/wpautop

因此,当您在页面的HTML源中看到<p>标记时,您希望在get_the_content()中搜索换行符,因为这些换行符将被转换为<p>标记。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48450253

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档