Я сталкиваюсь со странным поведением в многосайтовой установке (разные домены):
Я пытаюсь получить сообщение с основного сайта с одного из дочерних сайтов, но я получаю действительно странное поведение со всехget_ / the_ функционирует в цикле.Возьмите приведенный ниже код (вырезанный из пуха):
Для зарегистрированных пользователей the_permalink()
выводит НЕПРАВИЛЬНЫЙ URL: https://subsitedomain.com/issues/issue-name
Для зарегистрированных пользователей отображается правильный URL:https://mainsitedomain.com/issues/issue-name
Я уже связался с хостером (облачными), чтобы убедиться, что это не связано с какой-либо неправильной настройкой серверной части, и они заверили, что это не так.
if (is_multisite()) {
$this_id = get_current_blog_id();
switch_to_blog(1);
}
$args = [
'post_type' => 'issues',
'status' => 'publish',
'posts_per_page' => 1,
'tax_query' => [
[
'taxonomy' => 'mags',
'field' => 'slug',
'terms' => 'term-name',
]
]
];
$latest = new WP_Query($args);
if ($latest->have_posts()):
while ($latest->have_posts()) : $latest->the_post();
the_permalink();
endwhile;
endif;
wp_reset_postdata();
if (is_multisite()) {
switch_to_blog($this_id);
}