<?php
// три последних события
$args = array(
'posts_per_page' => 3,
'post_type' => 'event',
);
$query = new WP_Query( $args );
// Цикл
if ( $query->have_posts() ) {
while ( $query->have_posts() ) {
$query->the_post(); ?>
<div class="event">
<span class="event__date"><?php the_date(); ?></span>
<h2 class="event__title"><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h2>
<p class="event__excerpt"><?php the_excerpt(); ?></p>
</div>
<?php
}
} else {
// Постов не найдено
}
// Возвращаем оригинальные данные поста. Сбрасываем $post.
wp_reset_postdata();
date_default_timezone_set("Europe/Moscow");
$posts = get_posts( array(
'numberposts' => -1,
'post_type' => 'event',
) );
foreach ( $posts as $key => $post ) {
$post_data = array(
'ID' => $post->ID,
'post_date' => date('Y-m-d H:i:s'),
'post_date_gmt' => gmdate('Y-m-d H:i:s'),
'post_modified' => date('Y-m-d H:i:s'),
'post_modified_gmt' => gmdate('Y-m-d H:i:s'),
);
// обновляем запись в базе данных
wp_update_post( wp_slash( $post_data ) );
}
$terms = get_terms( [
'taxonomy' => 'events',
'slug' => 'moscow',
'hide_empty' => false,
] );
// функция проверки на четность числа
function is_int_even( $var ) {
return !( (int) $var & 1 );
}
foreach ( $post as $key => $post ) {
if ( is_int_even( $key ) ) {
// выводим шаблон для четных постов
} else {
// выводим шаблон для НЕчетных постов
}
}
the_posts_pagination()
работает с глобальным циклом на страницах архивов, используйте для этого paginate_links()
. Можете взять пример отсюда date_default_timezone_set("Europe/Moscow");
$current_time = date('Y-m-d H:i:s');
if ( strtotime($current_time) > strtotime($act_until) ) {
# событие прошло
} else {
# событие НЕ прошло
}
$cities = array(
'mos' => 'Москва',
'spb' => 'Санкт-Петербург',
'nsk' => 'Новосибирск',
'ekb' => 'Екатеринбург',
);
$pathinfo = pathinfo(home_url());
$network_id = get_current_network_id();
$user_id = get_current_user_id();
foreach ( $cities as $key => $city ) {
$site_data = array(
'domain' => $key .'.' . $pathinfo['basename'],
'path' => '/',
'network_id' => $network_id,
'user_id' => $user_id,
'title' => 'Заголовок сайта ' . $city,
'options' => [
'blogdescription' => 'Описание сайта ' . $city,
'permalink_structure' => '/%category%/%postname%/',
'template' => 'twentytwenty',
'stylesheet' => 'twentytwenty',
'posts_per_page' => '12',
'active_plugins' => [
'cyr2lat/cyr-to-lat.php',
'query-monitor/query-monitor.php',
'wordpress-seo/wp-seo.php',
'wp-fastest-cache/wpFastestCache.php'
]
]
);
// вставляем сайт в базу данных
$site_id = wp_insert_site( $site_data );
// пишем ошибку/успех
if( is_wp_error( $site_id ) ) {
var_dump( 'Ошибка инсерта мультисайта ' . $key . ': ' . $site_id->get_error_message() );
} else {
var_dump( 'Мультисайт ' . $key . ' опубликован удачно!' );
}
} // end foreach $cities