Ich versuche, einen Shortcode für Visual Composer zu erstellen. Ich muss alle benutzerdefinierten Beitragstypen als Dropdown-Liste abrufen. Ich verwende die get_post_types()
Funktion, aber es gibt ein leeres Array zurück.Wie erhalten Sie alle benutzerdefinierten Post-Typen in WordPress?
Hier ist mein Code:
/*Post type shortcode*/
add_action('vc_before_init', 'post_type_shortcode');
function post_type_shortcode(){
$args = array('public' => true, '_builtin' => false);
$output = 'names'; //'names'; // names or objects, note names is the default
$operator = 'and'; // 'and' or 'or'
$custom_post_types = get_post_types($args, $output, $operator);
vc_map(array(
"name" => __("Display Post Type", "saue"),
"description" => "Display post type",
"base" => "display_post_type",
"class" => "",
"category" => __("Saue Theme", "saue"),
"params" => array(
array(
"type" => "dropdown",
//"holder" => "div",
"heading" => __("Post Type", "saue"),
"admin_label" => true,
"param_name" => "post_type",
"value" => $custom_post_types,
),
)
));
}
Ich habe auch versucht, es in der functions.php zu bekommen, aber Ergebnis ist das gleiche.
Ich habe auch add_action('init',"function_name');
verwendet, es funktioniert innerhalb des Hakens aber nicht außerhalb des Hakens.
Kann mir bitte jemand helfen?
Es arbeitet mit, wenn auf der 'init' Aktion ausgeführt wird? –
Es funktioniert gut. 'add_action ('init', 'getPostTypes'); Funktion getPostTypes() { $ post_types = get_post_types(); var_export ($ post_types); } 'aber wenn' return $ post_types' verwendet, gibt es nur Standard-Post-Typen zurück. –