В сегодняшней статье мы покажем вам как делать все ваши записи в WordPress Личными по-умолчанию. Делать это будем с помощью action post_submitbox_misc_actions и добавления кода на jQuery на страницу для изменения выбранных настроек Видимости записи.
Для начала мы проверим текущий статус записи. Если статус у записи — Опубликовано, тогда мы можем установить Видимость в Открыто.
Затем мы проверяем, заполнено ли поле Пароль у записи. Если пароль установлен, то устанавливаем Видимость в Защищено паролем.
Далее проверяем, является ли запись «прилепленной», и если является, тогда мы изменяем соответствующий статус.
Если текущая запись не соответствует ни одному из статусов выше, тогда мы устанавливаем Видимость в значение «Личное» и задаем такое поведение по-умолчанию для последующих записей.
add_action( 'post_submitbox_misc_actions' , 'default_posts_to_private' ); function default_posts_to_private() { global $post; if ( $post->post_status == 'publish' ) { $visibility = 'public'; $visibility_trans = __('Public'); } elseif ( !empty( $post->post_password ) ) { $visibility = 'password'; $visibility_trans = __('Password protected'); } elseif ( $post->post_type == 'post' && is_sticky( $post->ID ) ) { $visibility = 'public'; $visibility_trans = __('Public, Sticky'); } else { $post->post_password = ''; $visibility = 'private'; $visibility_trans = __('Private'); } ?> <script type="text/javascript"> (function($){ try { $('#post-visibility-display').text('<?php echo $visibility_trans; ?>'); $('#hidden-post-visibility').val('<?php echo $visibility; ?>'); $('#visibility-radio-<?php echo $visibility; ?>').attr('checked', true); } catch(err){} }) (jQuery); </script> <?php }
Вот и все, мы надеемся, что эта статья помогла вам установить статус для всех записей в значение «Личное».
По всем вопросам и отзывам просьба писать в комментарии ниже.
Не забывайте, по возможности, оценивать понравившиеся записи количеством звездочек на ваше усмотрение.