J'essaie d'écrire une fonction qui me permettra de spécifier un identifiant de publication et un identifiant de blog, puis de lui renvoyer le permalien et le titre de la publication de blog.
J'ai besoin que cela soit efficace car la fonction sera utilisée dans une boucle foreach pouvant entraîner l'exécution de la fonction plus de 50 fois.
Des idées?
Cela semble assez simple.
Utilisation: http://codex.wordpress.org/Function_Reference/switch_to_blog
Pour revenir utiliser:
restore_current_blog();
Cela vous permet de passer d'un site à l'autre.
Alors: http://codex.wordpress.org/Function_Reference/get_permalink
Mes hypothèses sont que vous avez à la fois l'ID de blog et l'ID de publication.
Si c'est le cas, l'utilisation de ces deux fonctions devrait résoudre votre problème.
Selon la suggestion ci-dessus, je suis allé pour ceci:
$html = '<ul>';
foreach ( $recent_across_network as $post ) {
switch_to_blog( $post->blog_id );
$postURI = get_permalink( $post->ID );
$html .= '<li><a href="' . $postURI . '">' . $post->post_title . '</a></li>';
restore_current_blog();
}
$html .= '</ul>';
où $recent_across_network
est une liste des publications récentes d'un réseau multisite, mises en cache à l'aide de l'API Transients. Il y a un tutoriel lié ici .
Vous pouvez également faire:
$postURI = get_blog_permalink( $post->blog_id, $post->ID );
au lieu de switch_to_blog()
/restore_current_blog()
- ne sait pas ce qui est le plus efficace?