首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >获取使用快捷码的所有页面/帖子is

获取使用快捷码的所有页面/帖子is
EN

Stack Overflow用户
提问于 2019-03-31 03:58:28
回答 2查看 452关注 0票数 1

我想知道在wordpress中应用此短代码的页面或帖子ID。

我已经在wordpress页面中使用了这个快捷代码"qsm quiz=6“,现在我想在使用这个快捷代码的另一个页面中显示页面ID。

例子:我使用了2-3页的短码,我希望这些页面的is在一个单一的页面上使用这所有的短码。

EN

回答 2

Stack Overflow用户

发布于 2019-03-31 10:08:24

要获取当前页面的页面/帖子id,可以在shortcode函数中使用get_the_ID()。这将为您提供帖子/页面的ID,无论您在何处应用该快捷代码。

如果您想要使用该特定短码的所有帖子/页面的列表,您可以使用以下函数。

代码语言:javascript
运行
复制
function having_shortcode($str){
    $query = new WP_Query( "s='$str'" );
    $arr = array();
    if ($query->have_posts()){
      while ( $query->have_posts() ) { $query->the_post();
        $arr[] = get_the_ID().' '.get_the_title();
      } 
    }
    return $arr;
}

只需将短码名称传递给函数,它将为您提供一个使用短码的帖子/页面的ID数组。

在您的情况下,尝试这样做,您将获得所有In

代码语言:javascript
运行
复制
print_r(having_shortcode("[qsm quiz=6]"));
票数 1
EN

Stack Overflow用户

发布于 2019-04-01 04:24:03

我尝试了很多,但最后我找到了这个最好的答案。

使用了以下代码

代码语言:javascript
运行
复制
global $wp, $wpdb;

$page_id = $wpdb->get_var('SELECT ID FROM '.$wpdb->prefix.'posts WHERE post_content LIKE "%[qsm quiz=6]%"');

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

https://stackoverflow.com/questions/55435207

复制
相关文章

相似问题

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