[ Avaa Bypassed ]




Upload:

Command:

hmhc3928@18.119.167.62: ~ $
<?php
/**
 * Server-side rendering of the `core/template-part` block.
 *
 * @package WordPress
 */

/**
 * Renders the `core/template-part` block on the server.
 *
 * @since 5.9.0
 *
 * @global WP_Embed $wp_embed WordPress Embed object.
 *
 * @param array $attributes The block attributes.
 *
 * @return string The render.
 */
function render_block_core_template_part( $attributes ) {
	static $seen_ids = array();

	$template_part_id = null;
	$content          = null;
	$area             = WP_TEMPLATE_PART_AREA_UNCATEGORIZED;
	$theme            = isset( $attributes['theme'] ) ? $attributes['theme'] : get_stylesheet();

	if ( isset( $attributes['slug'] ) && get_stylesheet() === $theme ) {
		$template_part_id    = $theme . '//' . $attributes['slug'];
		$template_part_query = new WP_Query(
			array(
				'post_type'           => 'wp_template_part',
				'post_status'         => 'publish',
				'post_name__in'       => array( $attributes['slug'] ),
				'tax_query'           => array(
					array(
						'taxonomy' => 'wp_theme',
						'field'    => 'name',
						'terms'    => $theme,
					),
				),
				'posts_per_page'      => 1,
				'no_found_rows'       => true,
				'lazy_load_term_meta' => false, // Do not lazy load term meta, as template parts only have one term.
			)
		);
		$template_part_post  = $template_part_query->have_posts() ? $template_part_query->next_post() : null;
		if ( $template_part_post ) {
			// A published post might already exist if this template part was customized elsewhere
			// or if it's part of a customized template.
			$block_template = _build_block_template_result_from_post( $template_part_post );
			$content        = $block_template->content;
			if ( isset( $block_template->area ) ) {
				$area = $block_template->area;
			}
			/**
			 * Fires when a block template part is loaded from a template post stored in the database.
			 *
			 * @since 5.9.0
			 *
			 * @param string  $template_part_id   The requested template part namespaced to the theme.
			 * @param array   $attributes         The block attributes.
			 * @param WP_Post $template_part_post The template part post object.
			 * @param string  $content            The template part content.
			 */
			do_action( 'render_block_core_template_part_post', $template_part_id, $attributes, $template_part_post, $content );
		} else {
			$template_part_file_path = '';
			// Else, if the template part was provided by the active theme,
			// render the corresponding file content.
			if ( 0 === validate_file( $attributes['slug'] ) ) {
				$block_template = get_block_file_template( $template_part_id, 'wp_template_part' );

				$content = $block_template->content;
				if ( isset( $block_template->area ) ) {
					$area = $block_template->area;
				}

				// Needed for the `render_block_core_template_part_file` and `render_block_core_template_part_none` actions below.
				$block_template_file = _get_block_template_file( 'wp_template_part', $attributes['slug'] );
				if ( $block_template_file ) {
					$template_part_file_path = $block_template_file['path'];
				}
			}

			if ( '' !== $content && null !== $content ) {
				/**
				 * Fires when a block template part is loaded from a template part in the theme.
				 *
				 * @since 5.9.0
				 *
				 * @param string $template_part_id        The requested template part namespaced to the theme.
				 * @param array  $attributes              The block attributes.
				 * @param string $template_part_file_path Absolute path to the template path.
				 * @param string $content                 The template part content.
				 */
				do_action( 'render_block_core_template_part_file', $template_part_id, $attributes, $template_part_file_path, $content );
			} else {
				/**
				 * Fires when a requested block template part does not exist in the database nor in the theme.
				 *
				 * @since 5.9.0
				 *
				 * @param string $template_part_id        The requested template part namespaced to the theme.
				 * @param array  $attributes              The block attributes.
				 * @param string $template_part_file_path Absolute path to the not found template path.
				 */
				do_action( 'render_block_core_template_part_none', $template_part_id, $attributes, $template_part_file_path );
			}
		}
	}

	// WP_DEBUG_DISPLAY must only be honored when WP_DEBUG. This precedent
	// is set in `wp_debug_mode()`.
	$is_debug = WP_DEBUG && WP_DEBUG_DISPLAY;

	if ( is_null( $content ) ) {
		if ( $is_debug && isset( $attributes['slug'] ) ) {
			return sprintf(
				/* translators: %s: Template part slug. */
				__( 'Template part has been deleted or is unavailable: %s' ),
				$attributes['slug']
			);
		}

		return '';
	}

	if ( isset( $seen_ids[ $template_part_id ] ) ) {
		return $is_debug ?
			// translators: Visible only in the front end, this warning takes the place of a faulty block.
			__( '[block rendering halted]' ) :
			'';
	}

	// Look up area definition.
	$area_definition = null;
	$defined_areas   = get_allowed_block_template_part_areas();
	foreach ( $defined_areas as $defined_area ) {
		if ( $defined_area['area'] === $area ) {
			$area_definition = $defined_area;
			break;
		}
	}

	// If $area is not allowed, set it back to the uncategorized default.
	if ( ! $area_definition ) {
		$area = WP_TEMPLATE_PART_AREA_UNCATEGORIZED;
	}

	// Run through the actions that are typically taken on the_content.
	$content                       = shortcode_unautop( $content );
	$content                       = do_shortcode( $content );
	$seen_ids[ $template_part_id ] = true;
	$content                       = do_blocks( $content );
	unset( $seen_ids[ $template_part_id ] );
	$content = wptexturize( $content );
	$content = convert_smilies( $content );
	$content = wp_filter_content_tags( $content, "template_part_{$area}" );

	// Handle embeds for block template parts.
	global $wp_embed;
	$content = $wp_embed->autoembed( $content );

	if ( empty( $attributes['tagName'] ) || tag_escape( $attributes['tagName'] ) !== $attributes['tagName'] ) {
		$area_tag = 'div';
		if ( $area_definition && isset( $area_definition['area_tag'] ) ) {
			$area_tag = $area_definition['area_tag'];
		}
		$html_tag = $area_tag;
	} else {
		$html_tag = esc_attr( $attributes['tagName'] );
	}
	$wrapper_attributes = get_block_wrapper_attributes();

	return "<$html_tag $wrapper_attributes>" . str_replace( ']]>', ']]&gt;', $content ) . "</$html_tag>";
}

/**
 * Returns an array of area variation objects for the template part block.
 *
 * @since 6.1.0
 *
 * @param array $instance_variations The variations for instances.
 *
 * @return array Array containing the block variation objects.
 */
function build_template_part_block_area_variations( $instance_variations ) {
	$variations    = array();
	$defined_areas = get_allowed_block_template_part_areas();

	foreach ( $defined_areas as $area ) {
		if ( 'uncategorized' !== $area['area'] ) {
			$has_instance_for_area = false;
			foreach ( $instance_variations as $variation ) {
				if ( $variation['attributes']['area'] === $area['area'] ) {
					$has_instance_for_area = true;
					break;
				}
			}

			$scope = $has_instance_for_area ? array() : array( 'inserter' );

			$variations[] = array(
				'name'        => 'area_' . $area['area'],
				'title'       => $area['label'],
				'description' => $area['description'],
				'attributes'  => array(
					'area' => $area['area'],
				),
				'scope'       => $scope,
				'icon'        => $area['icon'],
			);
		}
	}
	return $variations;
}

/**
 * Returns an array of instance variation objects for the template part block
 *
 * @since 6.1.0
 *
 * @return array Array containing the block variation objects.
 */
function build_template_part_block_instance_variations() {
	// Block themes are unavailable during installation.
	if ( wp_installing() ) {
		return array();
	}

	if ( ! current_theme_supports( 'block-templates' ) && ! current_theme_supports( 'block-template-parts' ) ) {
		return array();
	}

	$variations     = array();
	$template_parts = get_block_templates(
		array(
			'post_type' => 'wp_template_part',
		),
		'wp_template_part'
	);

	$defined_areas = get_allowed_block_template_part_areas();
	$icon_by_area  = array_combine( array_column( $defined_areas, 'area' ), array_column( $defined_areas, 'icon' ) );

	foreach ( $template_parts as $template_part ) {
		$variations[] = array(
			'name'        => 'instance_' . sanitize_title( $template_part->slug ),
			'title'       => $template_part->title,
			// If there's no description for the template part don't show the
			// block description. This is a bit hacky, but prevent the fallback
			// by using a non-breaking space so that the value of description
			// isn't falsey.
			'description' => $template_part->description || '&nbsp;',
			'attributes'  => array(
				'slug'  => $template_part->slug,
				'theme' => $template_part->theme,
				'area'  => $template_part->area,
			),
			'scope'       => array( 'inserter' ),
			'icon'        => isset( $icon_by_area[ $template_part->area ] ) ? $icon_by_area[ $template_part->area ] : null,
			'example'     => array(
				'attributes' => array(
					'slug'  => $template_part->slug,
					'theme' => $template_part->theme,
					'area'  => $template_part->area,
				),
			),
		);
	}
	return $variations;
}

/**
 * Returns an array of all template part block variations.
 *
 * @since 5.9.0
 *
 * @return array Array containing the block variation objects.
 */
function build_template_part_block_variations() {
	$instance_variations = build_template_part_block_instance_variations();
	$area_variations     = build_template_part_block_area_variations( $instance_variations );
	return array_merge( $area_variations, $instance_variations );
}

/**
 * Registers the `core/template-part` block on the server.
 *
 * @since 5.9.0
 */
function register_block_core_template_part() {
	register_block_type_from_metadata(
		__DIR__ . '/template-part',
		array(
			'render_callback'    => 'render_block_core_template_part',
			'variation_callback' => 'build_template_part_block_variations',
		)
	);
}
add_action( 'init', 'register_block_core_template_part' );

Filemanager

Name Type Size Permission Actions
archives Folder 0755
audio Folder 0755
avatar Folder 0755
block Folder 0755
button Folder 0755
buttons Folder 0755
calendar Folder 0755
categories Folder 0755
classic Folder 0755
code Folder 0755
column Folder 0755
columns Folder 0755
comment-author-name Folder 0755
comment-content Folder 0755
comment-date Folder 0755
comment-edit-link Folder 0755
comment-reply-link Folder 0755
comment-template Folder 0755
comments Folder 0755
comments-pagination Folder 0755
comments-pagination-next Folder 0755
comments-pagination-numbers Folder 0755
comments-pagination-previous Folder 0755
comments-title Folder 0755
cover Folder 0755
details Folder 0755
embed Folder 0755
file Folder 0755
footnotes Folder 0755
freeform Folder 0755
gallery Folder 0755
group Folder 0755
heading Folder 0755
home-link Folder 0755
html Folder 0755
image Folder 0755
latest-comments Folder 0755
latest-posts Folder 0755
legacy-widget Folder 0755
list Folder 0755
list-item Folder 0755
loginout Folder 0755
media-text Folder 0755
missing Folder 0755
more Folder 0755
navigation Folder 0755
navigation-link Folder 0755
navigation-submenu Folder 0755
nextpage Folder 0755
page-list Folder 0755
page-list-item Folder 0755
paragraph Folder 0755
pattern Folder 0755
post-author Folder 0755
post-author-biography Folder 0755
post-author-name Folder 0755
post-comments-form Folder 0755
post-content Folder 0755
post-date Folder 0755
post-excerpt Folder 0755
post-featured-image Folder 0755
post-navigation-link Folder 0755
post-template Folder 0755
post-terms Folder 0755
post-title Folder 0755
preformatted Folder 0755
pullquote Folder 0755
query Folder 0755
query-no-results Folder 0755
query-pagination Folder 0755
query-pagination-next Folder 0755
query-pagination-numbers Folder 0755
query-pagination-previous Folder 0755
query-title Folder 0755
quote Folder 0755
read-more Folder 0755
rss Folder 0755
search Folder 0755
separator Folder 0755
shortcode Folder 0755
site-logo Folder 0755
site-tagline Folder 0755
site-title Folder 0755
social-link Folder 0755
social-links Folder 0755
spacer Folder 0755
table Folder 0755
tag-cloud Folder 0755
template-part Folder 0755
term-description Folder 0755
text-columns Folder 0755
verse Folder 0755
video Folder 0755
widget-group Folder 0755
archives.php File 2.92 KB 0644
avatar.php File 5.61 KB 0644
block.php File 3.13 KB 0644
blocks-json.php File 182.84 KB 0644
button.php File 1.76 KB 0644
calendar.php File 5.93 KB 0644
categories.php File 3.92 KB 0644
comment-author-name.php File 2.08 KB 0644
comment-content.php File 2.4 KB 0644
comment-date.php File 1.82 KB 0644
comment-edit-link.php File 1.67 KB 0644
comment-reply-link.php File 2.03 KB 0644
comment-template.php File 4.39 KB 0644
comments-pagination-next.php File 1.88 KB 0644
comments-pagination-numbers.php File 1.59 KB 0644
comments-pagination-previous.php File 1.75 KB 0644
comments-pagination.php File 1.17 KB 0644
comments-title.php File 2.71 KB 0644
comments.php File 6.61 KB 0644
cover.php File 3.04 KB 0644
error_log File 63.73 KB 0644
file.php File 1.75 KB 0644
footnotes.php File 3.68 KB 0644
gallery.php File 6.29 KB 0644
heading.php File 1.27 KB 0644
home-link.php File 5.6 KB 0644
image.php File 11.82 KB 0644
index.php File 4.99 KB 0644
latest-comments.php File 4.92 KB 0644
latest-posts.php File 8.34 KB 0644
legacy-widget.php File 3.9 KB 0644
list.php File 1.24 KB 0644
loginout.php File 1.38 KB 0644
media-text.php File 4.28 KB 0644
navigation-link.php File 13.21 KB 0644
navigation-submenu.php File 9.09 KB 0644
navigation.php File 57.9 KB 0644
page-list-item.php File 361 B 0644
page-list.php File 13.29 KB 0644
pattern.php File 2.14 KB 0644
post-author-biography.php File 1.49 KB 0644
post-author-name.php File 1.78 KB 0644
post-author.php File 2.54 KB 0644
post-comments-form.php File 2.74 KB 0644
post-content.php File 2.11 KB 0644
post-date.php File 3.05 KB 0644
post-excerpt.php File 3.37 KB 0644
post-featured-image.php File 9.14 KB 0644
post-navigation-link.php File 4.72 KB 0644
post-template.php File 5.61 KB 0644
post-terms.php File 3.6 KB 0644
post-title.php File 2.09 KB 0644
query-no-results.php File 1.8 KB 0644
query-pagination-next.php File 3.7 KB 0644
query-pagination-numbers.php File 4.66 KB 0644
query-pagination-previous.php File 3.1 KB 0644
query-pagination.php File 1.15 KB 0644
query-title.php File 2.05 KB 0644
query.php File 5.56 KB 0644
read-more.php File 1.79 KB 0644
require-dynamic-blocks.php File 4.01 KB 0644
require-static-blocks.php File 501 B 0644
rss.php File 3.88 KB 0644
search.php File 22.51 KB 0644
shortcode.php File 735 B 0644
site-logo.php File 6.19 KB 0644
site-tagline.php File 1.17 KB 0644
site-title.php File 1.77 KB 0644
social-link.php File 62.67 KB 0644
tag-cloud.php File 1.55 KB 0644
template-part.php File 9.86 KB 0644
term-description.php File 1.3 KB 0644
widget-group.php File 2.38 KB 0644