Tengo una funcion con una query que devuelve los post recientes.
Código PHP:
Ver original
function recent_posts ($num, $exclude_posts, $exclude_categories) { $args = array( 'orderby' => 'post_date', 'order' => 'desc', 'posts_per_page' => $num, 'caller_get_posts' => 1, 'post__not_in' => $exclude_posts, 'category__not_in' => $exclude_categories, ); $the_query = new WP_Query($args); while ($the_query->have_posts()) : $the_query->the_post(); ?> <div class="recentPost"> <div class="thumbnail"><?php if (has_post_thumbnail()) { the_post_thumbnail('home3'); } ?></div> <div class="excerpt"> <span class="WidgetTitulo"><a href="'<?php the_permalink(); ?>" title="<?php the_title(); ?>"> <?php the_title(); ?></a></span> <span class="date"><?php get_the_date() ?> | <?php the_author(); ?> </span> </div> </div> <!-- end recent posts--> <?php endwhile; wp_reset_query(); }
Esta función funciona perfectamente pero cuando la intento usar en un shortcode, este aparece siempre antes del contenido del post, en lugar de en la linea en la que esta escrito.
Investigando un poco, resulta que los shortcodes esto ocurre porque los shortcodes tienen que retornar un string, nada de echo ni print.
El problema es que no se como conseguir esto. He probado con esto:
Código PHP:
Ver original
function recent_posts ($num, $exclude_posts, $exclude_categories) { 'orderby' => 'post_date', 'order' => 'desc', 'posts_per_page' => $num, 'caller_get_posts' => 1, 'post__not_in' => $exclude_posts, 'category__not_in' => $exclude_categories, ); $the_query = new WP_Query($args); while ($the_query->have_posts()) : $the_query->the_post(); $output = '<div class="recentPost"> <div class="thumbnail">'. the_post_thumbnail("home3").'</div> <div class="excerpt"> <span class="WidgetTitulo"><a href="'. the_permalink() .'" title="'. the_title().'">'. the_title().'</a></span> <span class="date">'.get_the_date().' | '.the_author().' </span> </div> </div> <!-- end recent posts-->'; return $output; endwhile; wp_reset_query(); }
Pero me devuelve:
<img src="http://www.codetocode-developments.com/fabulous/files/demo_img9-50x50.jpg" class="attachment-home3 wp-post-image" alt="demo_img9" />http://www.codetocode-developments.c...ipsum-10/Lorem ipsum asideLorem ipsum asideadmin
Cuando deberia devolverme el titulo e imagen destacada de 5 posts envueltos cada uno en un div.
Alguien que le haya pasado que pueda echarme una mano?