Wo ist der Shortcode entgangen?

Ich arbeite mit einer function, die eine Liste von Posts zurückgibt, die den gleichen Typ wie der eigentliche Post hat. Tatsächlich gibt es eine Liste von Links mit Titel auf Anker Link und lassen Sie es mit einem Shortcode verwenden:

function list_this_type_posts( $atts ) { extract(shortcode_atts(array( 'container' => 'div', 'ulist' => 'ul', 'list' => 'li', 'link' => 'a', 'number' => '5', ), $atts)); $type = get_post_type(); $args_posts = array( 'posts_per_page' => 5, 'orderby' => 'post_date', 'order' => 'DESC', 'post_type' => $type, 'post_status' => 'publish', 'suppress_filters' => true ); $posts_array = get_posts( $args_posts ); $sThisTitle = ''; foreach($posts_array as $single_post) { $sThisTitle .= 'ID).'" >'.(get_the_title($single_post)).''; } $sThisTitle .= ''; return $sThisTitle; } add_shortcode('list_posts', 'list_this_type_posts'); add_filter('widget_text', 'do_shortcode'); 

Das funktioniert mit diesem Shortcode: [list_posts] , aber ich frage mich, warum es nicht so funktioniert:

 $sThisTitle = ''; return $sThisTitle; 

Es scheint, als ob es die HTML-Entitäten entkommt, aber WO? Ist es der richtige Weg, um fortzufahren?

Solutions Collecting From Web of "Wo ist der Shortcode entgangen?"