2017-08-31 46 views
0

所以我在我的网站上工作,并卡住了一些东西。出于某种原因,我无法从特定的自定义帖子类型中获取帖子,只能从标准帖子类型中获取帖子。WordPress的基于帖子类型的显示帖子不是手机

即使我将post_type设置为特定的帖子类型。 有没有人知道我做错了什么?

我付出这将足以显示帖子。

我使用的是基于职位ID的简码:

[bookmaker p=20] 
[bookmaker p=54] 
[bookmaker p=38] 
[bookmaker p=50] 

我funtion:

add_shortcode('bookmaker', 'bookmaker_shortcode_query'); 

function bookmaker_shortcode_query($atts, $content){ 
    extract(shortcode_atts(array(// a few default values 
    'posts_per_page' => '1', 
    'post_type' => 'Bookmakers', 
    'caller_get_posts' => 1) 
    , $atts)); 



    global $post; 

    $posts = new WP_Query($atts); 
    $output = ''; 
    if ($posts->have_posts()) 
     while ($posts->have_posts()): 
      $posts->the_post(); 
      $out = '  <div class="bookmaker"> 
     <div class="bookmakerinner"> 



      <div class="afbeeldingbm"> 
      <div class="afbeeldingbminner"> 
       <a target="_blank" href="'.get_post_meta($post->ID, 'claimlink', true).'"> 
       '.get_the_post_thumbnail().' 
       </a> 
      </div> 
      </div> 

      <div class="rightbm"> 

      <h4>'.get_the_title() .'</h4> 

      <div class="stars"> 
       <p><img src="https://bonusbookmakers.nl/wp-content/themes/Parbosnack/stars/'.get_post_meta($post->ID, 'stars', true).'.png"></p> 
      </div> 

      <div class="voorwaarden"> 
       <strong class="bolder">Voorwaarden:</strong> '.get_the_content().' 
      </div> 

      <div class="maxeur"> 
       <p><strong class="bolder">Max:</strong> &euro;'.get_post_meta($post->ID, 'maxeur', true).'</p> 
      </div> 

      <div class="maxbonus"> 
       <p><strong class="bolder">Bonus:</strong> '.get_post_meta($post->ID, 'maxbonus', true).'%</p> 
      </div> 

      <div class="odds"> 
       <p><strong class="bolder">Odds:</strong> '.get_post_meta($post->ID, 'odds', true).'</p> 
      </div> 

      <div class="lang"> 
       <p><strong class="bolder">Taal:</strong> '.get_post_meta($post->ID, 'taal', true).'</p> 
      </div> 

      <div class="priceclaimrow"> 

      <div class="betaalmethodes"> 
       <p>'.get_post_meta($post->ID, 'betaalmethodes', true).'</p> 
      </div> 

      <div class="visitwebsite"> 
       <p><a target="_blank" class="knpbezoeksite" href="'.get_post_meta($post->ID, 'claimlink', true).'">Bonus claimen</a></p> 
      </div> 

      </div> 

      </div> 

     </div> 

       '; 
      $out .='</div>'; 
    endwhile; 
    else 
    return; // no posts found 

    wp_reset_query(); 
    return html_entity_decode($out); 
} 
+0

庄家不似乎是一个岗位类型。这是不是消毒(可能是博彩公司?) –

+0

你应该尝试'post_type'=>'博彩公司', –

+0

根据你的代码,在你的短代码中声明的'p'不会做任何事情。 –

回答

0

我已经纠正你的代码PLZ立即检查其工作,

add_shortcode('bookmaker', 'bookmaker_shortcode_query'); 

function bookmaker_shortcode_query($atts, $content){ 
    $args = shortcode_atts(array(// a few default values 
    'posts_per_page' => '1', 
    'post_type' => 'your_custom_post_type', 
    'p' => '1', 
    'caller_get_posts' => 1) 
    , $atts); 


    global $post; 

    $posts = new WP_Query($args); 
    $output = ''; 
    if ($posts->have_posts()) 
     while ($posts->have_posts()): 
      $posts->the_post(); 
      $out = '  <div class="bookmaker"> 
     <div class="bookmakerinner"> 



      <div class="afbeeldingbm"> 
      <div class="afbeeldingbminner"> 
       <a target="_blank" href="'.get_post_meta($post->ID, 'claimlink', true).'"> 
       '.get_the_post_thumbnail().' 
       </a> 
      </div> 
      </div> 

      <div class="rightbm"> 

      <h4>'.get_the_title() .'</h4> 

      <div class="stars"> 
       <p><img src="https://bonusbookmakers.nl/wp-content/themes/Parbosnack/stars/'.get_post_meta($post->ID, 'stars', true).'.png"></p> 
      </div> 

      <div class="voorwaarden"> 
       <strong class="bolder">Voorwaarden:</strong> '.get_the_content().' 
      </div> 

      <div class="maxeur"> 
       <p><strong class="bolder">Max:</strong> &euro;'.get_post_meta($post->ID, 'maxeur', true).'</p> 
      </div> 

      <div class="maxbonus"> 
       <p><strong class="bolder">Bonus:</strong> '.get_post_meta($post->ID, 'maxbonus', true).'%</p> 
      </div> 

      <div class="odds"> 
       <p><strong class="bolder">Odds:</strong> '.get_post_meta($post->ID, 'odds', true).'</p> 
      </div> 

      <div class="lang"> 
       <p><strong class="bolder">Taal:</strong> '.get_post_meta($post->ID, 'taal', true).'</p> 
      </div> 

      <div class="priceclaimrow"> 

      <div class="betaalmethodes"> 
       <p>'.get_post_meta($post->ID, 'betaalmethodes', true).'</p> 
      </div> 

      <div class="visitwebsite"> 
       <p><a target="_blank" class="knpbezoeksite" href="'.get_post_meta($post->ID, 'claimlink', true).'">Bonus claimen</a></p> 
      </div> 

      </div> 

      </div> 

     </div> 

       '; 
      $out .='</div>'; 
    endwhile; 
    else 
    return; // no posts found 

    wp_reset_query(); 
    return html_entity_decode($out); 
} 
+1

如何?他要求自定义帖子类型。他不想获得帖子类型页面。 –

+1

这只是一个演示代码,你可以用任何帖子类型或使用简码[bookmaker p = 50 post_type =“your_post_type”]更改页面,无论如何,我编辑了我的答案 –

相关问题