SILENT KILLERPanel

Current Path: > home > transcarter > public_html > > wp-includes


Operation   : Linux host59.registrar-servers.com 4.18.0-513.18.1.lve.2.el8.x86_64 #1 SMP Sat Mar 30 15:36:11 UTC 2024 x86_64
Software     : Apache
Server IP    : 198.54.126.42 | Your IP: 216.73.216.135
Domains      : 1034 Domain(s)
Permission   : [ 0755 ]

Files and Folders in: /home/transcarter/public_html//wp-includes

NameTypeSizeLast ModifiedActions
ID3 Directory - -
IXR Directory - -
PHPMailer Directory - -
Requests Directory - -
SimplePie Directory - -
Text Directory - -
assets Directory - -
block-bindings Directory - -
block-patterns Directory - -
block-supports Directory - -
blocks Directory - -
certificates Directory - -
css Directory - -
customize Directory - -
fonts Directory - -
html-api Directory - -
images Directory - -
interactivity-api Directory - -
js Directory - -
l10n Directory - -
php-compat Directory - -
pomo Directory - -
rest-api Directory - -
sitemaps Directory - -
sodium_compat Directory - -
style-engine Directory - -
theme-compat Directory - -
widgets Directory - -
admin-bar.php File 37100 bytes September 03 2024 19:45:16.
atomlib.php File 11950 bytes April 21 2022 10:24:18.
author-template.php File 18951 bytes May 14 2023 16:58:24.
block-bindings.php File 5594 bytes June 12 2024 11:44:14.
block-editor.php File 28166 bytes June 04 2024 10:55:14.
block-i18n.json File 316 bytes August 11 2021 08:08:02.
block-patterns.php File 13162 bytes February 27 2024 21:05:12.
block-template-utils.php File 56559 bytes July 24 2024 13:40:16.
block-template.php File 12376 bytes March 06 2024 05:05:12.
blocks.php File 97472 bytes June 25 2024 11:45:18.
bookmark-template.php File 12934 bytes March 20 2024 11:49:10.
bookmark.php File 15427 bytes March 23 2024 13:20:12.
cache-compat.php File 5969 bytes October 10 2022 17:22:12.
cache.php File 13474 bytes October 10 2022 17:22:12.
canonical.php File 34513 bytes February 16 2024 23:34:12.
capabilities.php File 40016 bytes May 05 2024 13:35:20.
category-template.php File 57003 bytes September 25 2023 23:27:12.
category.php File 12709 bytes August 24 2023 08:01:16.
class-IXR.php File 2543 bytes February 06 2020 06:33:12.
class-avif-info.php File 29615 bytes April 26 2024 14:02:14.
class-feed.php File 529 bytes February 06 2020 06:33:12.
class-http.php File 367 bytes June 17 2022 10:20:14.
class-json.php File 43684 bytes February 03 2023 13:35:20.
class-oembed.php File 401 bytes June 17 2022 10:20:14.
class-phpass.php File 6708 bytes February 13 2023 09:08:24.
class-phpmailer.php File 664 bytes July 21 2020 11:58:02.
class-pop3.php File 20969 bytes February 11 2023 12:43:22.
class-requests.php File 2237 bytes April 05 2023 12:12:26.
class-simplepie-interface.php File 1079 bytes September 12 2022 14:47:14.
class-simplepie.php File 98061 bytes February 17 2024 13:25:10.
class-smtp.php File 457 bytes January 26 2021 13:45:58.
class-snoopy.php File 37715 bytes February 03 2023 13:35:20.
class-walker-category-dropdown.php File 2469 bytes September 14 2023 11:46:20.
class-walker-category.php File 8477 bytes September 08 2023 08:32:24.
class-walker-comment.php File 14221 bytes March 18 2024 14:46:14.
class-walker-nav-menu.php File 11313 bytes June 27 2023 14:26:28.
class-walker-page-dropdown.php File 2710 bytes September 14 2023 11:46:20.
class-walker-page.php File 7612 bytes September 14 2023 11:46:20.
class-wp-admin-bar.php File 17874 bytes July 18 2024 15:45:14.
class-wp-ajax-response.php File 5266 bytes September 12 2022 14:47:14.
class-wp-application-passwords.php File 12854 bytes May 08 2023 21:37:24.
class-wp-block-bindings-registry.php File 8944 bytes June 12 2024 11:44:14.
class-wp-block-bindings-source.php File 2178 bytes May 02 2024 12:19:14.
class-wp-block-editor-context.php File 1350 bytes September 12 2022 14:47:14.
class-wp-block-list.php File 4757 bytes November 01 2023 23:04:24.
class-wp-block-parser-block.php File 2555 bytes June 26 2023 23:45:38.
class-wp-block-parser-frame.php File 1916 bytes June 26 2023 23:45:38.
class-wp-block-parser.php File 11532 bytes May 02 2024 19:09:16.
class-wp-block-pattern-categories-registry.php File 5371 bytes September 12 2022 14:47:14.
class-wp-block-patterns-registry.php File 11738 bytes May 23 2024 17:35:14.
class-wp-block-styles-registry.php File 6262 bytes May 30 2024 07:54:08.
class-wp-block-supports.php File 5566 bytes May 06 2024 20:25:16.
class-wp-block-template.php File 1951 bytes June 23 2023 05:29:24.
class-wp-block-type-registry.php File 5013 bytes October 12 2023 11:34:34.
class-wp-block-type.php File 17265 bytes May 01 2024 23:01:10.
class-wp-block.php File 19691 bytes June 13 2024 07:57:16.
class-wp-classic-to-block-menu-converter.php File 4088 bytes August 21 2023 16:51:20.
class-wp-comment-query.php File 48395 bytes June 21 2024 16:26:14.
class-wp-comment.php File 9372 bytes August 24 2023 07:44:24.
class-wp-customize-control.php File 25730 bytes May 14 2024 15:49:10.
class-wp-customize-manager.php File 202413 bytes June 10 2024 21:12:18.
class-wp-customize-nav-menus.php File 57384 bytes June 03 2024 19:35:14.
class-wp-customize-panel.php File 10670 bytes September 10 2023 08:04:18.
class-wp-customize-section.php File 11244 bytes September 10 2023 08:04:18.
class-wp-customize-setting.php File 29889 bytes September 10 2023 08:04:18.
class-wp-customize-widgets.php File 71520 bytes May 14 2024 15:49:10.
class-wp-date-query.php File 35726 bytes February 16 2024 21:47:12.
class-wp-dependencies.php File 14062 bytes September 08 2023 08:32:24.
class-wp-dependency.php File 2627 bytes November 25 2022 15:12:16.
class-wp-duotone.php File 40783 bytes June 14 2024 11:18:12.
class-wp-editor.php File 72177 bytes June 20 2024 19:27:12.
class-wp-embed.php File 15994 bytes July 09 2023 19:17:30.
class-wp-error.php File 7502 bytes February 21 2023 16:39:20.
class-wp-fatal-error-handler.php File 7948 bytes December 16 2023 09:38:26.
class-wp-feed-cache-transient.php File 2586 bytes September 12 2022 14:47:14.
class-wp-feed-cache.php File 969 bytes August 10 2023 00:06:22.
class-wp-hook.php File 16000 bytes September 18 2023 11:41:18.
class-wp-http-cookie.php File 7389 bytes June 24 2023 16:17:24.
class-wp-http-curl.php File 12541 bytes September 21 2023 17:29:12.
class-wp-http-encoding.php File 6689 bytes June 22 2023 13:57:24.
class-wp-http-ixr-client.php File 3501 bytes September 12 2022 14:47:14.
class-wp-http-proxy.php File 5980 bytes June 22 2023 13:36:26.
class-wp-http-requests-hooks.php File 2022 bytes December 15 2022 21:32:18.
class-wp-http-requests-response.php File 4400 bytes October 11 2023 06:05:26.
class-wp-http-response.php File 2977 bytes September 12 2022 14:47:14.
class-wp-http-streams.php File 16859 bytes September 21 2023 17:29:12.
class-wp-http.php File 40760 bytes April 07 2024 10:18:18.
class-wp-image-editor-gd.php File 18943 bytes June 03 2024 19:27:12.
class-wp-image-editor-imagick.php File 32104 bytes June 14 2024 14:26:10.
class-wp-image-editor.php File 17606 bytes February 02 2024 17:48:16.
class-wp-list-util.php File 7443 bytes February 27 2024 22:38:16.
class-wp-locale-switcher.php File 6630 bytes January 25 2024 07:53:18.
class-wp-locale.php File 16111 bytes May 26 2024 19:51:14.
class-wp-matchesmapregex.php File 1828 bytes February 06 2024 01:25:14.
class-wp-meta-query.php File 30531 bytes April 22 2024 19:25:08.
class-wp-metadata-lazyloader.php File 6833 bytes May 11 2023 10:15:24.
class-wp-navigation-fallback.php File 9211 bytes October 06 2023 13:06:22.
class-wp-network-query.php File 19857 bytes June 21 2024 16:26:14.
class-wp-network.php File 12288 bytes May 13 2024 12:34:12.
class-wp-object-cache.php File 17594 bytes March 14 2023 15:55:20.
class-wp-oembed-controller.php File 6905 bytes March 06 2024 05:05:12.
class-wp-oembed.php File 31475 bytes June 07 2024 22:15:16.
class-wp-paused-extensions-storage.php File 5090 bytes February 16 2024 21:47:12.
class-wp-plugin-dependencies.php File 25319 bytes May 30 2024 14:15:10.
class-wp-post-type.php File 30350 bytes May 27 2024 14:24:14.
class-wp-post.php File 6484 bytes September 12 2022 14:47:14.
class-wp-query.php File 154081 bytes May 20 2024 20:21:16.
class-wp-recovery-mode-cookie-service.php File 6877 bytes October 04 2022 02:59:14.
class-wp-recovery-mode-email-service.php File 11183 bytes May 02 2023 14:45:22.
class-wp-recovery-mode-key-service.php File 4601 bytes December 24 2023 13:05:22.
class-wp-recovery-mode-link-service.php File 3463 bytes September 12 2022 14:47:14.
class-wp-recovery-mode.php File 11435 bytes May 02 2023 14:45:22.
class-wp-rewrite.php File 63430 bytes September 09 2023 08:28:26.
class-wp-role.php File 2523 bytes September 08 2023 08:32:24.
class-wp-roles.php File 8580 bytes July 28 2023 10:37:26.
class-wp-script-modules.php File 13755 bytes May 10 2024 08:09:18.
class-wp-scripts.php File 27906 bytes February 05 2024 09:43:12.
class-wp-session-tokens.php File 7451 bytes September 12 2022 14:47:14.
class-wp-simplepie-file.php File 3377 bytes August 10 2023 00:06:22.
class-wp-simplepie-sanitize-kses.php File 1770 bytes August 10 2023 00:06:22.
class-wp-site-query.php File 31545 bytes June 21 2024 16:26:14.
class-wp-site.php File 7454 bytes September 12 2022 14:47:14.
class-wp-styles.php File 10898 bytes May 02 2023 14:45:22.
class-wp-tax-query.php File 19555 bytes February 16 2024 21:47:12.
class-wp-taxonomy.php File 18567 bytes April 27 2023 22:15:18.
class-wp-term-query.php File 41166 bytes March 02 2024 13:38:08.
class-wp-term.php File 5298 bytes September 12 2022 14:47:14.
class-wp-text-diff-renderer-inline.php File 979 bytes February 14 2024 19:27:10.
class-wp-text-diff-renderer-table.php File 18807 bytes October 15 2023 13:55:24.
class-wp-textdomain-registry.php File 10203 bytes June 11 2024 13:27:18.
class-wp-theme-json-data.php File 1809 bytes June 04 2024 10:55:14.
class-wp-theme-json-resolver.php File 34714 bytes June 24 2024 09:33:16.
class-wp-theme-json-schema.php File 7367 bytes June 06 2024 07:02:16.
class-wp-theme-json.php File 157322 bytes September 04 2024 13:24:14.
class-wp-theme.php File 65299 bytes April 19 2024 16:59:16.
class-wp-token-map.php File 28430 bytes June 02 2024 14:16:14.
class-wp-user-meta-session-tokens.php File 2990 bytes January 09 2019 05:04:50.
class-wp-user-query.php File 43654 bytes May 19 2024 18:53:20.
class-wp-user-request.php File 2222 bytes September 12 2022 14:47:14.
class-wp-user.php File 22827 bytes February 16 2024 21:47:12.
class-wp-walker.php File 13322 bytes August 07 2024 18:47:10.
class-wp-widget-factory.php File 3347 bytes September 12 2022 14:47:14.
class-wp-widget.php File 18386 bytes August 25 2023 00:28:16.
class-wp-xmlrpc-server.php File 214948 bytes February 11 2024 19:14:20.
class-wp.php File 26119 bytes August 13 2023 09:31:24.
class-wpdb.php File 118379 bytes April 04 2024 14:13:14.
class.wp-dependencies.php File 373 bytes September 20 2022 13:17:12.
class.wp-scripts.php File 343 bytes September 20 2022 13:17:12.
class.wp-styles.php File 338 bytes September 20 2022 13:17:12.
comment-template.php File 101738 bytes July 18 2024 16:58:16.
comment.php File 129226 bytes June 13 2024 12:05:14.
compat.php File 16467 bytes July 18 2024 17:22:16.
cron.php File 41582 bytes May 02 2024 12:19:14.
date.php File 400 bytes June 17 2022 10:20:14.
default-constants.php File 11238 bytes April 17 2024 08:46:20.
default-filters.php File 35490 bytes June 11 2024 01:40:14.
default-widgets.php File 2222 bytes May 25 2021 07:27:58.
deprecated.php File 186291 bytes June 04 2024 06:39:10.
embed-template-trigger.php File 373 bytes September 12 2022 14:47:14.
embed-template.php File 338 bytes June 17 2022 10:20:14.
embed.php File 37908 bytes June 02 2024 21:02:16.
error-protection.php File 4121 bytes May 02 2023 14:45:22.
error_log File 795153 bytes August 07 2025 03:15:23.
feed-atom-comments.php File 5504 bytes March 04 2024 12:41:10.
feed-atom.php File 3048 bytes November 29 2021 09:52:00.
feed-rdf.php File 2668 bytes January 29 2020 00:45:18.
feed-rss.php File 1189 bytes January 29 2020 00:45:18.
feed-rss2-comments.php File 4136 bytes March 04 2024 12:41:10.
feed-rss2.php File 3799 bytes January 29 2020 00:45:18.
feed.php File 23317 bytes June 13 2024 19:50:14.
fonts.php File 9441 bytes June 05 2024 22:19:18.
formatting.php File 335374 bytes June 24 2024 13:42:10.
functions.php File 280644 bytes July 18 2024 17:22:16.
functions.wp-scripts.php File 14558 bytes May 26 2024 19:51:14.
functions.wp-styles.php File 8583 bytes May 26 2024 19:51:14.
general-template.php File 169119 bytes June 13 2024 13:48:06.
global-styles-and-settings.php File 21424 bytes July 12 2024 19:01:16.
http.php File 25548 bytes August 06 2025 04:48:37.
https-detection.php File 5661 bytes September 22 2023 18:08:20.
https-migration.php File 4741 bytes July 10 2023 21:38:26.
kses.php File 74389 bytes June 17 2024 11:04:12.
l10n-object.php File 38 bytes June 26 2025 11:42:43.
l10n.php File 66655 bytes August 06 2025 04:48:37.
link-template.php File 156140 bytes May 27 2024 15:29:16.
load.php File 55353 bytes May 10 2024 10:48:16.
locale.php File 162 bytes October 08 2019 16:19:04.
media-template.php File 62218 bytes July 24 2024 16:32:16.
media.php File 210542 bytes August 07 2024 18:43:12.
meta.php File 64078 bytes September 26 2023 14:32:20.
ms-blogs.php File 25728 bytes March 29 2024 10:42:14.
ms-default-constants.php File 4921 bytes June 13 2024 19:50:14.
ms-default-filters.php File 6636 bytes February 24 2023 01:23:20.
ms-deprecated.php File 21759 bytes April 12 2024 16:47:14.
ms-files.php File 2711 bytes August 23 2023 14:53:24.
ms-functions.php File 91243 bytes November 13 2023 11:13:28.
ms-load.php File 19883 bytes March 25 2024 16:19:18.
ms-network.php File 3782 bytes May 02 2023 10:26:24.
ms-settings.php File 4124 bytes June 22 2023 13:57:24.
ms-site.php File 40346 bytes May 04 2024 18:25:10.
nav-menu-template.php File 25917 bytes May 09 2024 14:16:14.
nav-menu.php File 44145 bytes May 08 2024 17:37:14.
option.php File 100442 bytes June 14 2024 14:21:10.
pluggable-deprecated.php File 6263 bytes January 11 2020 18:32:06.
pluggable.php File 113181 bytes April 13 2024 15:33:14.
plugin.php File 35465 bytes June 08 2023 06:54:22.
post-formats.php File 7102 bytes May 27 2024 15:29:16.
post-template.php File 66814 bytes June 01 2024 16:37:18.
post-thumbnail-template.php File 10308 bytes May 17 2023 17:31:24.
post.php File 284273 bytes June 18 2024 13:46:10.
query.php File 37035 bytes August 24 2023 08:01:16.
registration-functions.php File 200 bytes November 12 2020 11:17:08.
registration.php File 200 bytes November 12 2020 11:17:08.
rest-api.php File 98466 bytes June 02 2024 21:02:16.
revision.php File 30906 bytes May 06 2024 15:35:20.
rewrite.php File 19514 bytes July 11 2023 10:15:28.
robots-template.php File 5185 bytes April 06 2022 14:33:04.
rss-functions.php File 255 bytes November 16 2020 22:52:06.
rss.php File 23107 bytes June 13 2024 19:50:14.
script-loader.php File 130296 bytes June 13 2024 14:06:08.
script-modules.php File 5978 bytes May 26 2024 19:51:14.
session.php File 258 bytes February 06 2020 06:33:12.
shortcodes.php File 24051 bytes May 25 2024 02:04:12.
sitemaps.php File 3238 bytes May 15 2021 16:38:06.
spl-autoload-compat.php File 441 bytes November 12 2020 11:17:08.
style-engine.php File 7563 bytes May 03 2024 03:47:12.
taxonomy.php File 175314 bytes June 18 2024 03:12:12.
template-canvas.php File 544 bytes September 30 2023 23:22:28.
template-loader.php File 3012 bytes May 26 2020 08:37:10.
template.php File 24154 bytes February 21 2024 19:26:08.
theme-i18n.json File 1245 bytes June 24 2024 07:51:16.
theme-previews.php File 2832 bytes December 08 2023 06:32:24.
theme-templates.php File 6223 bytes October 13 2023 16:21:22.
theme.json File 8704 bytes June 12 2024 05:11:14.
theme.php File 133979 bytes June 13 2024 19:50:14.
update.php File 36884 bytes June 13 2024 19:50:14.
user.php File 173735 bytes June 05 2024 11:23:10.
vars.php File 6489 bytes April 04 2024 12:40:06.
version.php File 961 bytes August 06 2025 04:48:37.
widgets.php File 70682 bytes May 26 2024 19:51:14.
wp-db.php File 445 bytes July 21 2022 21:45:12.
wp-diff.php File 647 bytes February 06 2020 06:33:12.

Reading File: /home/transcarter/public_html//wp-includes/block-patterns.php

<?php
/**
 * Register the block patterns and block patterns categories
 *
 * @package WordPress
 * @since 5.5.0
 */

add_theme_support( 'core-block-patterns' );

/**
 * Registers the core block patterns and categories.
 *
 * @since 5.5.0
 * @since 6.3.0 Added source to core block patterns.
 * @access private
 */
function _register_core_block_patterns_and_categories() {
	$should_register_core_patterns = get_theme_support( 'core-block-patterns' );

	if ( $should_register_core_patterns ) {
		$core_block_patterns = array(
			'query-standard-posts',
			'query-medium-posts',
			'query-small-posts',
			'query-grid-posts',
			'query-large-title-posts',
			'query-offset-posts',
			'social-links-shared-background-color',
		);

		foreach ( $core_block_patterns as $core_block_pattern ) {
			$pattern           = require __DIR__ . '/block-patterns/' . $core_block_pattern . '.php';
			$pattern['source'] = 'core';
			register_block_pattern( 'core/' . $core_block_pattern, $pattern );
		}
	}

	register_block_pattern_category( 'banner', array( 'label' => _x( 'Banners', 'Block pattern category' ) ) );
	register_block_pattern_category(
		'buttons',
		array(
			'label'       => _x( 'Buttons', 'Block pattern category' ),
			'description' => __( 'Patterns that contain buttons and call to actions.' ),
		)
	);
	register_block_pattern_category(
		'columns',
		array(
			'label'       => _x( 'Columns', 'Block pattern category' ),
			'description' => __( 'Multi-column patterns with more complex layouts.' ),
		)
	);
	register_block_pattern_category(
		'text',
		array(
			'label'       => _x( 'Text', 'Block pattern category' ),
			'description' => __( 'Patterns containing mostly text.' ),
		)
	);
	register_block_pattern_category(
		'query',
		array(
			'label'       => _x( 'Posts', 'Block pattern category' ),
			'description' => __( 'Display your latest posts in lists, grids or other layouts.' ),
		)
	);
	register_block_pattern_category(
		'featured',
		array(
			'label'       => _x( 'Featured', 'Block pattern category' ),
			'description' => __( 'A set of high quality curated patterns.' ),
		)
	);
	register_block_pattern_category(
		'call-to-action',
		array(
			'label'       => _x( 'Call to Action', 'Block pattern category' ),
			'description' => __( 'Sections whose purpose is to trigger a specific action.' ),
		)
	);
	register_block_pattern_category(
		'team',
		array(
			'label'       => _x( 'Team', 'Block pattern category' ),
			'description' => __( 'A variety of designs to display your team members.' ),
		)
	);
	register_block_pattern_category(
		'testimonials',
		array(
			'label'       => _x( 'Testimonials', 'Block pattern category' ),
			'description' => __( 'Share reviews and feedback about your brand/business.' ),
		)
	);
	register_block_pattern_category(
		'services',
		array(
			'label'       => _x( 'Services', 'Block pattern category' ),
			'description' => __( 'Briefly describe what your business does and how you can help.' ),
		)
	);
	register_block_pattern_category(
		'contact',
		array(
			'label'       => _x( 'Contact', 'Block pattern category' ),
			'description' => __( 'Display your contact information.' ),
		)
	);
	register_block_pattern_category(
		'about',
		array(
			'label'       => _x( 'About', 'Block pattern category' ),
			'description' => __( 'Introduce yourself.' ),
		)
	);
	register_block_pattern_category(
		'portfolio',
		array(
			'label'       => _x( 'Portfolio', 'Block pattern category' ),
			'description' => __( 'Showcase your latest work.' ),
		)
	);
	register_block_pattern_category(
		'gallery',
		array(
			'label'       => _x( 'Gallery', 'Block pattern category' ),
			'description' => __( 'Different layouts for displaying images.' ),
		)
	);
	register_block_pattern_category(
		'media',
		array(
			'label'       => _x( 'Media', 'Block pattern category' ),
			'description' => __( 'Different layouts containing video or audio.' ),
		)
	);
	register_block_pattern_category(
		'videos',
		array(
			'label'       => _x( 'Videos', 'Block pattern category' ),
			'description' => __( 'Different layouts containing videos.' ),
		)
	);
	register_block_pattern_category(
		'audio',
		array(
			'label'       => _x( 'Audio', 'Block pattern category' ),
			'description' => __( 'Different layouts containing audio.' ),
		)
	);
	register_block_pattern_category(
		'posts',
		array(
			'label'       => _x( 'Posts', 'Block pattern category' ),
			'description' => __( 'Display your latest posts in lists, grids or other layouts.' ),
		)
	);
	register_block_pattern_category(
		'footer',
		array(
			'label'       => _x( 'Footers', 'Block pattern category' ),
			'description' => __( 'A variety of footer designs displaying information and site navigation.' ),
		)
	);
	register_block_pattern_category(
		'header',
		array(
			'label'       => _x( 'Headers', 'Block pattern category' ),
			'description' => __( 'A variety of header designs displaying your site title and navigation.' ),
		)
	);
}

/**
 * Normalize the pattern properties to camelCase.
 *
 * The API's format is snake_case, `register_block_pattern()` expects camelCase.
 *
 * @since 6.2.0
 * @access private
 *
 * @param array $pattern Pattern as returned from the Pattern Directory API.
 * @return array Normalized pattern.
 */
function wp_normalize_remote_block_pattern( $pattern ) {
	if ( isset( $pattern['block_types'] ) ) {
		$pattern['blockTypes'] = $pattern['block_types'];
		unset( $pattern['block_types'] );
	}

	if ( isset( $pattern['viewport_width'] ) ) {
		$pattern['viewportWidth'] = $pattern['viewport_width'];
		unset( $pattern['viewport_width'] );
	}

	return (array) $pattern;
}

/**
 * Register Core's official patterns from wordpress.org/patterns.
 *
 * @since 5.8.0
 * @since 5.9.0 The $current_screen argument was removed.
 * @since 6.2.0 Normalize the pattern from the API (snake_case) to the
 *              format expected by `register_block_pattern` (camelCase).
 * @since 6.3.0 Add 'pattern-directory/core' to the pattern's 'source'.
 *
 * @param WP_Screen $deprecated Unused. Formerly the screen that the current request was triggered from.
 */
function _load_remote_block_patterns( $deprecated = null ) {
	if ( ! empty( $deprecated ) ) {
		_deprecated_argument( __FUNCTION__, '5.9.0' );
		$current_screen = $deprecated;
		if ( ! $current_screen->is_block_editor ) {
			return;
		}
	}

	$supports_core_patterns = get_theme_support( 'core-block-patterns' );

	/**
	 * Filter to disable remote block patterns.
	 *
	 * @since 5.8.0
	 *
	 * @param bool $should_load_remote
	 */
	$should_load_remote = apply_filters( 'should_load_remote_block_patterns', true );

	if ( $supports_core_patterns && $should_load_remote ) {
		$request         = new WP_REST_Request( 'GET', '/wp/v2/pattern-directory/patterns' );
		$core_keyword_id = 11; // 11 is the ID for "core".
		$request->set_param( 'keyword', $core_keyword_id );
		$response = rest_do_request( $request );
		if ( $response->is_error() ) {
			return;
		}
		$patterns = $response->get_data();

		foreach ( $patterns as $pattern ) {
			$pattern['source']  = 'pattern-directory/core';
			$normalized_pattern = wp_normalize_remote_block_pattern( $pattern );
			$pattern_name       = 'core/' . sanitize_title( $normalized_pattern['title'] );
			register_block_pattern( $pattern_name, $normalized_pattern );
		}
	}
}

/**
 * Register `Featured` (category) patterns from wordpress.org/patterns.
 *
 * @since 5.9.0
 * @since 6.2.0 Normalized the pattern from the API (snake_case) to the
 *              format expected by `register_block_pattern()` (camelCase).
 * @since 6.3.0 Add 'pattern-directory/featured' to the pattern's 'source'.
 */
function _load_remote_featured_patterns() {
	$supports_core_patterns = get_theme_support( 'core-block-patterns' );

	/** This filter is documented in wp-includes/block-patterns.php */
	$should_load_remote = apply_filters( 'should_load_remote_block_patterns', true );

	if ( ! $should_load_remote || ! $supports_core_patterns ) {
		return;
	}

	$request         = new WP_REST_Request( 'GET', '/wp/v2/pattern-directory/patterns' );
	$featured_cat_id = 26; // This is the `Featured` category id from pattern directory.
	$request->set_param( 'category', $featured_cat_id );
	$response = rest_do_request( $request );
	if ( $response->is_error() ) {
		return;
	}
	$patterns = $response->get_data();
	$registry = WP_Block_Patterns_Registry::get_instance();
	foreach ( $patterns as $pattern ) {
		$pattern['source']  = 'pattern-directory/featured';
		$normalized_pattern = wp_normalize_remote_block_pattern( $pattern );
		$pattern_name       = sanitize_title( $normalized_pattern['title'] );
		// Some patterns might be already registered as core patterns with the `core` prefix.
		$is_registered = $registry->is_registered( $pattern_name ) || $registry->is_registered( "core/$pattern_name" );
		if ( ! $is_registered ) {
			register_block_pattern( $pattern_name, $normalized_pattern );
		}
	}
}

/**
 * Registers patterns from Pattern Directory provided by a theme's
 * `theme.json` file.
 *
 * @since 6.0.0
 * @since 6.2.0 Normalized the pattern from the API (snake_case) to the
 *              format expected by `register_block_pattern()` (camelCase).
 * @since 6.3.0 Add 'pattern-directory/theme' to the pattern's 'source'.
 * @access private
 */
function _register_remote_theme_patterns() {
	/** This filter is documented in wp-includes/block-patterns.php */
	if ( ! apply_filters( 'should_load_remote_block_patterns', true ) ) {
		return;
	}

	if ( ! wp_theme_has_theme_json() ) {
		return;
	}

	$pattern_settings = wp_get_theme_directory_pattern_slugs();
	if ( empty( $pattern_settings ) ) {
		return;
	}

	$request         = new WP_REST_Request( 'GET', '/wp/v2/pattern-directory/patterns' );
	$request['slug'] = $pattern_settings;
	$response        = rest_do_request( $request );
	if ( $response->is_error() ) {
		return;
	}
	$patterns          = $response->get_data();
	$patterns_registry = WP_Block_Patterns_Registry::get_instance();
	foreach ( $patterns as $pattern ) {
		$pattern['source']  = 'pattern-directory/theme';
		$normalized_pattern = wp_normalize_remote_block_pattern( $pattern );
		$pattern_name       = sanitize_title( $normalized_pattern['title'] );
		// Some patterns might be already registered as core patterns with the `core` prefix.
		$is_registered = $patterns_registry->is_registered( $pattern_name ) || $patterns_registry->is_registered( "core/$pattern_name" );
		if ( ! $is_registered ) {
			register_block_pattern( $pattern_name, $normalized_pattern );
		}
	}
}

/**
 * Register any patterns that the active theme may provide under its
 * `./patterns/` directory.
 *
 * @since 6.0.0
 * @since 6.1.0 The `postTypes` property was added.
 * @since 6.2.0 The `templateTypes` property was added.
 * @since 6.4.0 Uses the `WP_Theme::get_block_patterns` method.
 * @access private
 */
function _register_theme_block_patterns() {

	/*
	 * During the bootstrap process, a check for active and valid themes is run.
	 * If no themes are returned, the theme's functions.php file will not be loaded,
	 * which can lead to errors if patterns expect some variables or constants to
	 * already be set at this point, so bail early if that is the case.
	 */
	if ( empty( wp_get_active_and_valid_themes() ) ) {
		return;
	}

	/*
	 * Register patterns for the active theme. If the theme is a child theme,
	 * let it override any patterns from the parent theme that shares the same slug.
	 */
	$themes   = array();
	$theme    = wp_get_theme();
	$themes[] = $theme;
	if ( $theme->parent() ) {
		$themes[] = $theme->parent();
	}
	$registry = WP_Block_Patterns_Registry::get_instance();

	foreach ( $themes as $theme ) {
		$patterns    = $theme->get_block_patterns();
		$dirpath     = $theme->get_stylesheet_directory() . '/patterns/';
		$text_domain = $theme->get( 'TextDomain' );

		foreach ( $patterns as $file => $pattern_data ) {
			if ( $registry->is_registered( $pattern_data['slug'] ) ) {
				continue;
			}

			$file_path = $dirpath . $file;

			if ( ! file_exists( $file_path ) ) {
				_doing_it_wrong(
					__FUNCTION__,
					sprintf(
						/* translators: %s: file name. */
						__( 'Could not register file "%s" as a block pattern as the file does not exist.' ),
						$file
					),
					'6.4.0'
				);
				$theme->delete_pattern_cache();
				continue;
			}

			$pattern_data['filePath'] = $file_path;

			// Translate the pattern metadata.
			// phpcs:ignore WordPress.WP.I18n.NonSingularStringLiteralText,WordPress.WP.I18n.NonSingularStringLiteralDomain,WordPress.WP.I18n.LowLevelTranslationFunction
			$pattern_data['title'] = translate_with_gettext_context( $pattern_data['title'], 'Pattern title', $text_domain );
			if ( ! empty( $pattern_data['description'] ) ) {
				// phpcs:ignore WordPress.WP.I18n.NonSingularStringLiteralText,WordPress.WP.I18n.NonSingularStringLiteralDomain,WordPress.WP.I18n.LowLevelTranslationFunction
				$pattern_data['description'] = translate_with_gettext_context( $pattern_data['description'], 'Pattern description', $text_domain );
			}

			register_block_pattern( $pattern_data['slug'], $pattern_data );
		}
	}
}
add_action( 'init', '_register_theme_block_patterns' );

SILENT KILLER Tool