在具有特定页面父级的页面上显示自定义标记

时间:2015-07-02 作者:Punal

我想使用WP\\u Query或Query\\u Posts方法。

我目前正在使用query\\u post方法。

$terms_array = array();

if ($strurl == "somesite.com"){
 $resparent = "18219"; //Page ID
 $nocat = "-2,-4,-5,-6,-1014,-875,-25,-301"; //Omitted Pages ID
}

query_posts(\'post_type=page&posts_per_page=500&taxonomy=guidance&cat=\'.$nocat.\'\');
 if ( have_posts() ) : while ( have_posts() ) : the_post();
    $terms = get_the_terms($post->ID, \'post_tag\');

    foreach ( $terms as $term ) {
      if (strlen($term->slug) >1){
      $terms_array[] = $term->slug.",".$term->name ;
 }
    }
endwhile; 
wp_reset_postdata();
wp_reset_query();
endif;
这种方法似乎不起作用。

因此,基本上我希望我的分类法标记仅在标记到具有特定父级的页面时显示。

1 个回复
SO网友:gdaniel

据我所知,您有一个显示多达500页的循环。如果页面父项=18219,则需要查询该页面的标记。据我所知,默认情况下,WP不允许您标记页面,只允许标记帖子。但让我们假设你有一个插件,可以让你做到这一点。。。在循环中,您可以检查页面是否具有与您要查找的ID相等的父级。

    //Check if this page has a parent equal to $resparent
    if($post->post_parent == $resparent){

      $terms = get_the_terms($post->ID, \'post_tag\');

        foreach ( $terms as $term ) {
          if (strlen($term->slug) >1){
            $terms_array[] = $term->slug.",".$term->name ;
          }
        }
    }

结束

相关推荐

Virtual Pages plugins

我很难让插件正常工作Virtual Pages (WordPress插件可简化虚拟页面的创建)我确实进行了编辑,根据查询创建了一个循环。add_action( \'gm_virtual_pages\', function( $controller ) { /* Creating virtuals pages for companies */ $args = array( \'post_type\' => array(\'companies\',), \'post_status\'