Accès à partir d'informations sur le modèle d'un autre blog (dans le même réseau)
-
06-11-2019 - |
Question
Dans mon blog racine (1), j'ai un type de publication personnalisé qui peut être lié à un blog existant de mon réseau. Il le fait en enregistrant dans Post Metas l'identifiant du blog auquel il est lié. j'utilise _blog_id
comme nom pour ces données.
Dans une page de ce blog racine, je répertorie ces articles personnalisés, et je retrette facilement la méta que j'ai enregistrée:
<?php while ( have_posts() ) : the_post();
$blog_id = get_post_meta(get_the_id(), '_blog_id', true);
Maintenant, j'ai l'identifiant du blog dont je veux des informations, donc j'essaie ce qui suit:
switch_to_blog($blog_id);
$blog_url = get_bloginfo('url');
restore_current_blog();
Malheureusement, cela ne fonctionne pas parce que $blog_url
a l'URL du blog racine.
Pire: switch_to_blog()
fonctionne mais pas restore_current_blog()
, parce que les appels ultérieurs aux fonctions de boucle fonctionnent désormais dans le sous-blog. Par exemple, lorsque vous appelez the_post_thumbnails()
, la source d'image est référée par "/ uploads / sites / 2/2014 ..." pendant que je suis dans le site racine.
Comme vous pouvez le deviner, j'ai deux questions:
- Comment retreive les informations sur le blog d'un autre blog du réseau, à partir du modèle d'un blog?
- Pourquoi
switch_to_blog()
, suivie parrestore_current_blog()
Fait les fonctions de boucle pour se comporter de manière incorrecte?
Merci tout le monde! Passe un bon weekend!
Pas de solution correcte