mobile : 09359556950 telegram : @karimeh_net whatsapp : 09359556950

پیدا کردن تمام پست تایپ های تعریف شده

 

در قالب سایت ممکن هست برای پست تایپ هایی تعریف شده باشه و همینطور بعضی از افزونه ها مثل edd پست تایپ های مخصوص خودشون رو به سایت اضافه می کنن . برای اینکه بفهمیم چه پست تایپ هایی در سایت تعریف شدن و اونها رو لیست کنیم از این فانکشن استفاده می کنیم که پست تایپ ها رو در یک آرایه ذخیره می کنیم .

 

 

add_action('init', function(){
global $all_post_types;
$all_post_types=array();
$post_types = get_post_types( array( 'public' => true ,'_builtin' => false), 'names' ); 
foreach($post_types as $key => $value){
$all_post_types[]=$value;
}
});

در صورتی که نیاز داشته باشیم که بدونیم از در هر پست تایپ چند پست منتشر شده و یا در جایی از سایت نمایش بدیم می تونیم با این کد تعداد پست ها رو پیدا کنیم و در آرایه ذخیره کنیم

 

add_action('init', function(){
global $all_post_types;
$all_post_types=array();
$post_types = get_post_types( array( 'public' => true ,'_builtin' => false), 'names' ); 
foreach($post_types as $key => $value){
    
$args = array(
'post_type' => $value,
'post_status' => 'publish');
$the_query = new WP_Query( $args );
$count_posts= $the_query->found_posts;    
$all_post_types[$value]=$count_posts;
}
print_r($all_post_types);

});

 

که خروجی اش چیزی شبیه این خواهد شد .

Array ( [article] => 98 [theme] => 234 [plugin] => 76 [codex] => 435 [blog] => 2130 ) 
محصولات مرتبط