Nama File / Folder
Size
Action
accordion
--
NONE
accordion-heading
--
NONE
accordion-item
--
NONE
accordion-panel
--
NONE
archives
--
NONE
audio
--
NONE
avatar
--
NONE
block
--
NONE
button
--
NONE
buttons
--
NONE
calendar
--
NONE
categories
--
NONE
code
--
NONE
column
--
NONE
columns
--
NONE
comment-author-name
--
NONE
comment-content
--
NONE
comment-date
--
NONE
comment-edit-link
--
NONE
comment-reply-link
--
NONE
comment-template
--
NONE
comments
--
NONE
comments-pagination
--
NONE
comments-pagination-next
--
NONE
comments-pagination-numbers
--
NONE
comments-pagination-previous
--
NONE
comments-title
--
NONE
cover
--
NONE
details
--
NONE
embed
--
NONE
file
--
NONE
footnotes
--
NONE
freeform
--
NONE
gallery
--
NONE
group
--
NONE
heading
--
NONE
home-link
--
NONE
html
--
NONE
image
--
NONE
latest-comments
--
NONE
latest-posts
--
NONE
legacy-widget
--
NONE
list
--
NONE
list-item
--
NONE
loginout
--
NONE
math
--
NONE
media-text
--
NONE
missing
--
NONE
more
--
NONE
navigation
--
NONE
navigation-link
--
NONE
navigation-submenu
--
NONE
nextpage
--
NONE
page-list
--
NONE
page-list-item
--
NONE
paragraph
--
NONE
pattern
--
NONE
post-author
--
NONE
post-author-biography
--
NONE
post-author-name
--
NONE
post-comments-count
--
NONE
post-comments-form
--
NONE
post-comments-link
--
NONE
post-content
--
NONE
post-date
--
NONE
post-excerpt
--
NONE
post-featured-image
--
NONE
post-navigation-link
--
NONE
post-template
--
NONE
post-terms
--
NONE
post-time-to-read
--
NONE
post-title
--
NONE
preformatted
--
NONE
pullquote
--
NONE
query
--
NONE
query-no-results
--
NONE
query-pagination
--
NONE
query-pagination-next
--
NONE
query-pagination-numbers
--
NONE
query-pagination-previous
--
NONE
query-title
--
NONE
query-total
--
NONE
quote
--
NONE
read-more
--
NONE
rss
--
NONE
search
--
NONE
separator
--
NONE
shortcode
--
NONE
site-logo
--
NONE
site-tagline
--
NONE
site-title
--
NONE
social-link
--
NONE
social-links
--
NONE
spacer
--
NONE
table
--
NONE
tag-cloud
--
NONE
template-part
--
NONE
term-count
--
NONE
term-description
--
NONE
term-name
--
NONE
term-template
--
NONE
terms-query
--
NONE
text-columns
--
NONE
verse
--
NONE
video
--
NONE
widget-group
--
NONE
accordion-item.php
2.354KB
Hapus
Edit
Rename
accordion.php
1.12KB
Hapus
Edit
Rename
archives.php
4.312KB
Hapus
Edit
Rename
block.php
4.088KB
Hapus
Edit
Rename
blocks-json.php
213.431KB
Hapus
Edit
Rename
calendar.php
5.933KB
Hapus
Edit
Rename
categories.php
4.541KB
Hapus
Edit
Rename
comment-date.php
1.819KB
Hapus
Edit
Rename
comment-reply-link.php
2.026KB
Hapus
Edit
Rename
comment-template.php
4.389KB
Hapus
Edit
Rename
comments-pagination-next.php
1.879KB
Hapus
Edit
Rename
comments-pagination-numbers.php
1.594KB
Hapus
Edit
Rename
comments-pagination-previous.php
1.748KB
Hapus
Edit
Rename
comments.php
6.625KB
Hapus
Edit
Rename
footnotes.php
3.683KB
Hapus
Edit
Rename
gallery.php
6.288KB
Hapus
Edit
Rename
heading.php
1.271KB
Hapus
Edit
Rename
home-link.php
5.311KB
Hapus
Edit
Rename
index.php
11.972KB
Hapus
Edit
Rename
latest-comments.php
4.912KB
Hapus
Edit
Rename
legacy-widget.php
3.917KB
Hapus
Edit
Rename
loginout.php
1.625KB
Hapus
Edit
Rename
media-text.php
4.28KB
Hapus
Edit
Rename
navigation-link.php
13.634KB
Hapus
Edit
Rename
navigation-submenu.php
9.742KB
Hapus
Edit
Rename
page-list-item.php
0.353KB
Hapus
Edit
Rename
page-list.php
13.292KB
Hapus
Edit
Rename
pattern.php
1.746KB
Hapus
Edit
Rename
post-author-name.php
1.905KB
Hapus
Edit
Rename
post-author.php
2.67KB
Hapus
Edit
Rename
post-date.php
3.547KB
Hapus
Edit
Rename
post-featured-image.php
9.144KB
Hapus
Edit
Rename
post-terms.php
3.555KB
Hapus
Edit
Rename
post-time-to-read.php
6.341KB
Hapus
Edit
Rename
post-title.php
2.088KB
Hapus
Edit
Rename
query-pagination.php
1.148KB
Hapus
Edit
Rename
query-total.php
2.476KB
Hapus
Edit
Rename
query.php
5.557KB
Hapus
Edit
Rename
read-more.php
1.787KB
Hapus
Edit
Rename
require-dynamic-blocks.php
4.59KB
Hapus
Edit
Rename
require-static-blocks.php
0.545KB
Hapus
Edit
Rename
search.php
23.259KB
Hapus
Edit
Rename
shortcode.php
0.718KB
Hapus
Edit
Rename
site-tagline.php
1.175KB
Hapus
Edit
Rename
site-title.php
1.82KB
Hapus
Edit
Rename
social-link.php
66.147KB
Hapus
Edit
Rename
tag-cloud.php
1.553KB
Hapus
Edit
Rename
template-part.php
9.916KB
Hapus
Edit
Rename
term-count.php
1.8KB
Hapus
Edit
Rename
term-description.php
1.729KB
Hapus
Edit
Rename
term-template.php
4.412KB
Hapus
Edit
Rename
widget-group.php
2.381KB
Hapus
Edit
Rename
<?php // phpcs:ignore WordPress.Files.FileName.InvalidClassFileName // Needed for WP_Block_Cloner helper class. /** * Server-side rendering of the `core/block` block. * * @package WordPress */ /** * Renders the `core/block` block on server. * * @since 5.0.0 * * @global WP_Embed $wp_embed * * @param array $attributes The block attributes. * * @return string Rendered HTML of the referenced block. */ function render_block_core_block( $attributes, $content, $block_instance ) { static $seen_refs = array(); if ( empty( $attributes['ref'] ) ) { return ''; } $reusable_block = get_post( $attributes['ref'] ); if ( ! $reusable_block || 'wp_block' !== $reusable_block->post_type ) { return ''; } if ( isset( $seen_refs[ $attributes['ref'] ] ) ) { // 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; return $is_debug ? // translators: Visible only in the front end, this warning takes the place of a faulty block. __( '[block rendering halted]' ) : ''; } if ( 'publish' !== $reusable_block->post_status || ! empty( $reusable_block->post_password ) ) { return ''; } $seen_refs[ $attributes['ref'] ] = true; // Handle embeds for reusable blocks. global $wp_embed; $content = $wp_embed->run_shortcode( $reusable_block->post_content ); $content = $wp_embed->autoembed( $content ); // Back compat. // For blocks that have not been migrated in the editor, add some back compat // so that front-end rendering continues to work. // This matches the `v2` deprecation. Removes the inner `values` property // from every item. if ( isset( $attributes['content'] ) ) { foreach ( $attributes['content'] as &$content_data ) { if ( isset( $content_data['values'] ) ) { $is_assoc_array = is_array( $content_data['values'] ) && ! wp_is_numeric_array( $content_data['values'] ); if ( $is_assoc_array ) { $content_data = $content_data['values']; } } } } // This matches the `v1` deprecation. Rename `overrides` to `content`. if ( isset( $attributes['overrides'] ) && ! isset( $attributes['content'] ) ) { $attributes['content'] = $attributes['overrides']; } // Apply Block Hooks. $content = apply_block_hooks_to_content_from_post_object( $content, $reusable_block ); /** * We attach the blocks from $content as inner blocks to the Synced Pattern block instance. * This ensures that block context available to the Synced Pattern block instance is provided to * those blocks. */ $block_instance->parsed_block['innerBlocks'] = parse_blocks( $content ); $block_instance->parsed_block['innerContent'] = array_fill( 0, count( $block_instance->parsed_block['innerBlocks'] ), null ); if ( method_exists( $block_instance, 'refresh_context_dependents' ) ) { // WP_Block::refresh_context_dependents() was introduced in WordPress 6.8. $block_instance->refresh_context_dependents(); } else { // This branch can be removed once Gutenberg requires WordPress 6.8 or later. if ( ! class_exists( 'WP_Block_Cloner' ) ) { // phpcs:ignore Gutenberg.Commenting.SinceTag.MissingClassSinceTag class WP_Block_Cloner extends WP_Block { /** * Static methods of subclasses have access to protected properties * of instances of the parent class. * In this case, this gives us access to `available_context` and `registry`. */ // phpcs:ignore Gutenberg.Commenting.SinceTag.MissingMethodSinceTag public static function clone_instance( $instance ) { return new WP_Block( $instance->parsed_block, $instance->available_context, $instance->registry ); } } } $block_instance = WP_Block_Cloner::clone_instance( $block_instance ); } $content = $block_instance->render( array( 'dynamic' => false ) ); unset( $seen_refs[ $attributes['ref'] ] ); return $content; } /** * Registers the `core/block` block. * * @since 5.3.0 */ function register_block_core_block() { register_block_type_from_metadata( __DIR__ . '/block', array( 'render_callback' => 'render_block_core_block', ) ); } add_action( 'init', 'register_block_core_block' );