// переключаемся на ID основного сайта сети
switch_to_blog( get_main_site_id() );
// задаем нужные нам критерии выборки данных из БД
$args = array(
'posts_per_page' => 6,
'post_type' => 'post',
);
$query = new WP_Query( $args );
// Цикл
if ( $query->have_posts() ) {
while ( $query->have_posts() ) {
$query->the_post();
echo '<h3>' . get_the_title() . '</h3>';
}
} else {
// Постов не найдено
}
// Возвращаем оригинальные данные поста. Сбрасываем $post.
wp_reset_postdata();
// возвращемся к текущему блогу
restore_current_blog();
wp_query()
с выводом заголовков выглядит так:// задаем нужные нам критерии выборки данных из БД
$args = array(
'posts_per_page' => 6,
'post_type' => 'post',
);
$query = new WP_Query( $args );
// Цикл
if ( $query->have_posts() ) {
while ( $query->have_posts() ) {
$query->the_post();
echo '<h3>' . get_the_title() . '</h3>';
}
} else {
// Постов не найдено
}
// Возвращаем оригинальные данные поста. Сбрасываем $post.
wp_reset_postdata();
query_posts()
, это системная функция ядра, вы сломаете основной запрос. Чтобы его поправить используйте хук pre_get_posts
add_action( 'pre_get_posts', 'set_front_page_category' );
function set_front_page_category( $query ) {
if ( $query->is_front_page() && $query->is_main_query() ) {
$query->set( 'cat', '2' );
}
}
wp_query()
и get_terms()
, они нужны для запроса записей и терминов из базы для последующей обработки или выводаthe_title()
— вывести заголовокthe_post_thumbnail()
— вывести изображение записиthe_content()
— вывести контентget_field()
и the_field()
вторым параметром принимают id записиget_field($selector, [$post_id], [$format_value]);
the_field($selector, [$post_id], [$format_value]);
get_field( 'slogan_3img', 15 );
the_field( 'slogan_3img', 15 );
get_field( 'slogan_3img', 'options' );
the_field( 'slogan_3img', 'options' );
has_term()
if ( has_term( 'pochta', $taxonomy ) ) {
// code
}
ob_start()
и вернуть его с помощью ob_get_contents()
function slider_shortcode_func( $atts ) {
ob_start(); ?>
<div class="slider">
<div class="slider-init">
<h2>Slider Content</h2>
</div>
</div>
<?php ob_get_contents();
}
add_shortcode( 'slider', 'slider_shortcode_func' );
function slider_shortcode_func( $atts ) {
$html = '';
$html .= '<div class="slider">';
$html .= '<div class="slider-init">';
$html .= '<h2>Slider Content</h2>';
$html .= '</div>';
$html .= '</div>';
return $html;
}
add_shortcode( 'slider', 'slider_shortcode_func' );
the_field()
нужно переписать в get_field()
$slider_post->ID
, функция setup_postdata()
не нужнаgetSlider()
должна возвращаться массив записей для работы, без нее ничего работать не будет