如果页面内容具有短码,则获取页面ID

时间:2017-11-08 作者:Maqk

我一直在尝试获取包含短代码的页面ID。我正在获取空值。不知道我做错了什么。

function availabilty_id() {
  global $template_id;
  // Custom Query to look only in pages post type
  $template_query = new WP_Query(
    array(
        \'post_type\' => \'page\',
    )
  );
  if ( $template_query->have_posts() ) {
    while ( $template_query->have_posts() ) {
        $template_query->the_post();
         $post_content = get_the_content();
        if ( has_shortcode( $post_content, \'availability\' ) ) {
            $template_id = get_the_ID();
            //var_dump($template_id);
        }
    }
    wp_reset_postdata();
  }
}
add_action( \'init\', \'availabilty_id\' );

1 个回复
SO网友:Benoti

如果要获取页面ID,需要使用$post全局。À简单示例

function  my_function(){
     global $post;

     $post_id = $post->ID;
     // Etc
}
请注意,它可以为特定类型的页面(归档)返回空值。

结束

相关推荐