Как приостановить срок действия блога (дочернего сайта) в WordPress для нескольких сайтов?
Когда блог создается в Wordpress Network (WordPress для нескольких сайтов). Я добавил пользовательское поле 'blog_expire', которое является датой истечения срока действия этого блога.
Так что в админке Wordpress я хочу проверить, есть ли сегодня блог (дочерний сайт) с 'blog_expire', а затем заархивировать его (это означает приостановить блог) с помощью вызова: update_archived($subsite_id, '1'). Но никаких результатов, как ожидалось, ни один блог не заархивирован / приостановлен. Где я был не прав? Есть ли лучшее решение?
Я новичок в WordPress MultiSite, с нетерпением жду получения помощи от сообщества. Большое спасибо!!!
PS: я добавил код ниже с помощью плагина Code Snippets
add_action( 'init', 'archive_expired_sites' );
function archive_expired_sites() {
$subsites = get_sites();
if ( ! empty ( $subsites ) ) {
foreach( $subsites as $subsite ) {
$subsite_id = get_object_vars( $subsite )["blog_id"];
$subsite_expire_date = get_blog_option( $subsite_id, 'blog_expire' );
$current_date = date('m/d/Y');
if( $subsite_expire_date == $current_date )
{
update_archived($subsite_id, '1');
}
}
}
}