Todo lo que se explica es sobre CDTuts
He creado una Red de WordPress y lo que quiero es obtener las publicaciones recientes de todos los blogs de subdominios seleccionados. Necesito obtener el último Todos organizado por fecha y no organizado por blog ID .
No quiero usar switch_to_blog , por lo tanto, usar foreach, porque solo hago un bucle de publicaciones dentro de los próximos blogs que cambio. Quiero combinar las publicaciones y tenerlas todas organizadas por fecha. Me imagino que tendría que hacer esto consultando mysql en lugar de usar WP_Query. Pero esperaba una manera más nativa de hacer esto. Esto es para la lista de publicaciones que se realizarán en la parte inferior de la página principal, como puede ver con marcas de tiempo que no son ascendentes ni descendientes por el número mayor o menor.
Incluso intenté hacer algo como esto, pero esto tampoco funcionaría. Ordenar la publicación por la marca de tiempo de Unix, solo para darse cuenta de que las publicaciones aún están siendo organizadas por switch_to_blog en lugar de hacerlo de manera oportuna.
<?php
switch_to_blog(1);
$main_posts = get_posts();
switch_to_blog(2);
$php_posts = get_posts();
switch_to_blog(3);
$wp_posts = get_posts();
switch_to_blog(4);
$mac_posts = get_posts();
switch_to_blog(4);
$psd_posts = get_posts();
switch_to_blog(1);
$posts = array_merge($main_posts, $php_posts, $wp_posts, $mac_posts, $psd_posts);
usort($post, get_post_time);
foreach($posts as $post){
?>
<li class="thumb"><a href="<?php echo the_permalink(); ?>">
<div class="site-name">
</div>
<div class="title">
<?php echo the_title(); ?><br> <?php echo get_post_time(); ?>
</div>
</a></li>
<?php }
?>
También he creado una función donde puedo seleccionar el ID del blog usando switch_to_blog . Esto solo funcionará en las fichas en la parte superior de la página principal. Pero también estoy tratando de hacer lo mismo para las últimas publicaciones en la parte inferior. No podré crear un desplazamiento para poder mantener el diseño del mosaico manteniendo los 6 últimos mensajes.
Esto se basó en una respuesta anterior en StackExchange
function global_latest_post($LatestBlogNumber,$LatestPostNumber, $LatestThumbSize, $LatestThumbNumber) {
$original_blog_id = get_current_blog_id();
$bids = array($LatestBlogNumber);
foreach($bids as $bid) {
switch_to_blog($bid);
$tiles = new WP_Query('posts_per_page=1');
while ($tiles->have_posts()) : $tiles->the_post(); ?>
<a href="<?php echo the_permalink(); ?>" class="<?php echo $LatestThumbSize; ?> thumb-<?php echo $LatestThumbNumber; ?>">
<p class="cover">Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.</p>
<p class="bold bottom">Read More →</p>
<h1><?php echo $LatestPostNumber; ?>. <?php echo the_title(); ?> in <?php bloginfo('name'); ?></h1>
</a>
<?php
endwhile;
}
switch_to_blog( $original_blog_id ); //switched back to current blog
}