Exemplos de Códigos que exibem Post_type com WordPress em PHP

Hoje vou postar alguns exemplos de códigos funcionais que vão te ajudar a criar shortcodes para exibir e listar custom post types dentro do seu WordPress, para quem não sabe CPT são formas de você ter mais conteúdos específicos no seu painel, por exemplo, post é um post_type, Portfolio é outro, Páginas são outros, e assim vai.

Normalmente Custom Post_Types são utilizados em diversos tipos de WordPress para customização da área de cliente, podendo ser utilizados para praticamente tudo que se envolva a listagem de conteúdo específicos, normalmente se utiliza o plugin CPT UI para fazer a criação dos Posts e das Taxonomias necessárias.

Entretanto, um problema é exibir esses posts, ainda não temos um plugin realmente funcional para isso, então shortcodes sempre salvam!

    add_shortcode( 'product-list','bpo_product_list' );
function bpo_product_list ( $atts ) {
  $atts = shortcode_atts( array(
    'category' => ''
  ), $atts );
    $terms = get_terms('product_category');
    wp_reset_query();
    $args = array('post_type' => 'product',
      'tax_query' => array(
        array(
          'taxonomy' => 'product_category',
          'field' => 'slug',
          'terms' => $atts,
        ),
      ),
     );
     $loop = new WP_Query($args);
     if($loop->have_posts()) {
        while($loop->have_posts()) : $loop->the_post();
            echo ' "'.get_the_title().'" ';
        endwhile;
     }

     else {
            echo  'Sorry, no posts were found';
          }
}

Acima temos um exemplo bacana de uso de ShortCode para recuperar dados de um Custom Post Type

Para obter mais informações, consulte CPT (CPT), product_category (categoria de produto).
[product-list category="shirts"]

Outro Exemplo:

 

function shortcode_bws_quiz_maker($id)
{
  if($id!='')
  {
    $post_id=$id[0];
    $html='';
    global $wpdb;
   $args=array('post_type'=>'post_type','p'=>$post_id);
   $wp_posts=new WP_Query($args);
   $posts=$wp_posts->posts;
  $html.="What you to get write here";
    return $html;

  }
  else
  {
    return 'Please enter correct shortcode';    
  }

}
add_shortcode('bws_quiz_maker','shortcode_bws_quiz_maker');

Mais um exemplo funcional:

if ( ! function_exists('events_shortcode') ) {

    function events_shortcode() {
    	$args   =   array(
                	'post_type'         =>  'events',
                	'post_status'       =>  'publish',
                	'order' => 'ASC',
                	'posts_per_page' => 10,
    	            );
    	            
        $postslist = new WP_Query( $args );
        global $post;

        if ( $postslist->have_posts() ) :
        $events   .= '<div class="events-lists">';
		
            while ( $postslist->have_posts() ) : $postslist->the_post();         
                $events    .= '<div class="items">';
                $events    .= '<a href="'. get_permalink() .'">'. get_the_title() .'</a>';
                $events    .= '</div>';            
            endwhile;
            wp_reset_postdata();
            $events  .= '</div>';			
        endif;    
        return $events;
    }
    add_shortcode( 'events', 'events_shortcode' );    
}
Facebook
EnglishItalianJapanesePortugueseSpanish
WhatsApp chat