Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
Set WordPress posts visibility to private by default. Source: http://www.paulund.co.uk/set-wordpress-posts-to-private-by-default
<?php
//* Set WordPress posts visibility to private by default
function customprefix_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
}
add_action( 'post_submitbox_misc_actions' , 'customprefix_default_posts_to_private' );
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.