From 3e4e3db64b366028845cfd610c5b17f26bd062ee Mon Sep 17 00:00:00 2001
From: Jake Vanderwerf <get@jakevanderwerf.ca>
Date: Sun, 06 Sep 2026 23:04:45 +0000
Subject: [PATCH] =Added conditional logic. Skeletoned a block to select a particular meta for display.

---
 cleanup.php |   90 ++++++++++++++++++++++++++++++++++++--------
 1 files changed, 73 insertions(+), 17 deletions(-)

diff --git a/cleanup.php b/cleanup.php
index 87c9092..a076df2 100644
--- a/cleanup.php
+++ b/cleanup.php
@@ -27,12 +27,19 @@
 	// Remove global WordPress styles
 	$global_styles = [
 		'global-styles',
+		'classic-theme-styles',
+		'core-block-supports',
 		'dashicons',
-		'core-block-supports'
+		'common',
+		'wp-block-library',
+		'wp-block-library-theme',
+		'wp-block-styles',
+		'block-style-variation-styles'
 	];
 
 	foreach ($global_styles as $style) {
 		wp_dequeue_style($style);
+		wp_deregister_style($style);
 	}
 
 	// Remove all block-specific styles
@@ -40,16 +47,21 @@
 	foreach ($wp_styles->queue as $handle) {
 		if (str_starts_with($handle, 'wp-block-')) {
 			wp_dequeue_style($handle);
+			wp_deregister_style($style);
 		}
 	}
 
 	// Remove block-specific scripts and modules
-	wp_deregister_script('heartbeat');
+	if (!is_admin()) {
+		wp_deregister_script('heartbeat');
+	}
 	wp_dequeue_script('wp-block-template-skip-link');
 
-	// Remove WordPress 6.5+ script modules
-	wp_dequeue_script_module('@wordpress/interactivity');
-	wp_deregister_script_module('@wordpress/interactivity');
+	if (!is_plugin_active('woocommerce/woocommerce.php')) {
+		wp_dequeue_script_module('@wordpress/interactivity');
+		wp_deregister_script_module('@wordpress/interactivity');
+	}
+
 	wp_dequeue_script_module('@wordpress/block-library/navigation/view');
 	wp_deregister_script_module('@wordpress/block-library/navigation/view');
 
@@ -59,7 +71,7 @@
 	// Remove third-party styles
 	wp_deregister_style('akismet-widget-style-inline-css');
 }
-add_action('wp_enqueue_scripts', 'jvbRemoveBlockAssets', 999);
+//add_action('wp_enqueue_scripts', 'jvbRemoveBlockAssets', 9999);
 
 /*******************************************************************************
 WORDPRESS HEAD CLEANUP
@@ -74,7 +86,6 @@
 	// Remove version info and meta tags
 	remove_action('wp_head', 'wp_generator');
 	remove_action('wp_head', 'rsd_link');
-	remove_action('wp_head', 'wlwmanifest_link');
 	remove_action('wp_head', 'wp_shortlink_wp_head');
 
 	// Remove emoji support
@@ -114,7 +125,7 @@
 
 	// Block user enumeration
 	add_action('init', 'jvbBlockUserEnumeration');
-	add_filter('rest_endpoints', 'jvbDisableUserEndpoints');
+//	add_filter('rest_endpoints', 'jvbDisableUserEndpoints');
 	add_filter('author_rewrite_rules', '__return_empty_array');
 
 	// Disable file editing in admin (if not already set)
@@ -201,7 +212,7 @@
 		BASE . 'gallery'
 	];
 
-	//TODO: Dynamically use MetaManager to get any image or gallery fields
+	//TODO: Dynamically use Meta.php to get any image or gallery fields
 	foreach ($meta_fields as $meta_key) {
 		$meta_value = get_post_meta($post_id, $meta_key, true);
 
@@ -221,7 +232,7 @@
 		}
 	}
 }
-add_action('before_delete_post', 'jvbCleanupPostDeletion');
+//add_action('before_delete_post', 'jvbCleanupPostDeletion');
 
 /*******************************************************************************
 THEME CUSTOMIZATION
@@ -234,23 +245,68 @@
 function jvbBodyClasses(array $classes): array
 {
 	// Start with empty array - only add what we need
-	$clean_classes = [];
+	$classes = [];
 
 	// Add contextual classes
 	if (is_front_page()) {
-		$clean_classes[] = 'home';
+		$classes[] = 'home';
 	}
 
 	if (function_exists('jvbIsDirectory') && jvbIsDirectory()) {
-		$clean_classes[] = 'is-directory';
+		$classes[] = 'is-directory';
 	} elseif (is_tax()) {
-		$clean_classes[] = str_replace(BASE, '', get_queried_object()->taxonomy);
+		$classes[] = str_replace(BASE, '', get_queried_object()->taxonomy);
 	} elseif (is_singular() && !is_singular('page')) {
-		$clean_classes[] = str_replace(BASE, '', get_queried_object()->post_type);
+		$classes[] = str_replace(BASE, '', get_queried_object()->post_type);
 	} elseif (is_post_type_archive()) {
-		$clean_classes[] = str_replace(BASE, '', get_queried_object()->name);
+		$classes[] = str_replace(BASE, '', get_queried_object()->name);
 	}
 
-	return $clean_classes;
+	return $classes;
 }
 add_filter('body_class', 'jvbBodyClasses');
+
+
+add_action('admin_init', function () {
+	// Redirect any user trying to access comments page
+	global $pagenow;
+
+	if ($pagenow === 'edit-comments.php') {
+		wp_redirect(admin_url());
+		exit;
+	}
+
+	// Remove comments metabox from dashboard
+	remove_meta_box('dashboard_recent_comments', 'dashboard', 'normal');
+
+	// Disable support for comments and trackbacks in post types
+	foreach (get_post_types() as $post_type) {
+		if (post_type_supports($post_type, 'comments')) {
+			remove_post_type_support($post_type, 'comments');
+			remove_post_type_support($post_type, 'trackbacks');
+		}
+	}
+});
+
+// Close comments on the front-end
+add_filter('comments_open', '__return_false', 20, 2);
+add_filter('pings_open', '__return_false', 20, 2);
+
+// Hide existing comments
+add_filter('comments_array', '__return_empty_array', 10, 2);
+//
+//// Remove comments page in menu
+//add_action('admin_menu', function () {
+//	remove_menu_page('edit-comments.php');
+//});
+//
+//// Remove comments links from admin bar
+//add_action('init', function () {
+//	if (is_admin_bar_showing()) {
+//		remove_action('admin_bar_menu', 'wp_admin_bar_comments_menu', 60);
+//	}
+//});
+//// Remove comments links from admin bar
+//add_action('add_admin_bar_menus', function () {
+//	remove_action('admin_bar_menu', 'wp_admin_bar_comments_menu', 60);
+//});

--
Gitblit v1.10.0