Auto Admin Logout

// Auto Admin Logout / Kiri Vadivelu / 2026 add_filter( ‘auth_cookie_expiration’, ‘short_session_admin’, 10, 3 ); function short_session_admin( $expiration, $user_id, $remember ) { // Only apply the short timeout for administrators if ( user_can( $user_id, ‘manage_options’ ) ) { return 3600;…Continue reading

Sticky Tag Post

// Sticky Tag Post / Kiri Vadivelu / 2026 add_action(‘pre_get_posts’, function($query) { if (!is_admin() && $query->is_main_query() && is_tag()) { $sticky_posts = get_option(‘sticky_posts’); if (!empty($sticky_posts)) { add_filter(‘posts_orderby’, function($orderby, $query) use ($sticky_posts) { if (!is_admin() && $query->is_main_query() && is_tag()) { global $wpdb;…Continue reading

Restrict WP Heartbeat

// Restrict WP Heartbeat / Kiri Vadivelu / 2026 add_action( ‘init’, function() { if ( ! is_admin() ) { wp_deregister_script( ‘heartbeat’ ); // Disable heartbeat in frontend } }); add_filter( ‘heartbeat_settings’, function( $settings ) { $settings[‘interval’] = 60; // Set…Continue reading

Sensitive User Switch

// Sensitive User Switch / Kiri Vadivelu / 2026 add_filter( ‘user_has_cap’, function( $allcaps, $caps, $args, $user ) { if ( ‘switch_to_user’ === $args[0] ) { // Deny switching to everyone except site owner if ( $user->user_login !== ‘ownerusername’ ) {…Continue reading

Sensitive Site Setting

// Remove Sensitive Setting / Kiri Vadivelu / 2026 add_action( ‘admin_init’, ‘remove_sensitive_setting’, 999 ); function remove_sensitive_setting() { global $user_ID; if ( $user_ID != 1 ) { // Primary Menus remove_menu_page( ‘options-general.php’ ); // Settings // Secondary Menus remove_submenu_page( ‘themes.php’, ‘site-editor.php’…Continue reading

Remove Screen Options

// Remove Screen Options / Kiri Vadivelu / 2026 function remove_screen_options() { // Check if user has ‘manage_options’ (Admin) OR ‘edit_others_posts’ (Editor) if ( current_user_can( ‘manage_options’ ) || current_user_can( ‘edit_others_posts’ ) ) { return true; // Show Screen Options }…Continue reading

Publish Future Post

// Publish Future Post / Kiri Vadivelu / 2026 function publish_future_type( $post_data ) { if ( $post_data[‘post_status’] == ‘future’ && $post_data[‘post_type’] == ‘post’ ) { $post_data[‘post_status’] = ‘publish’; } return $post_data; } add_filter(‘wp_insert_post_data’, ‘publish_future_type’); // Remove the automatic future hook…Continue reading