ProShell v2.0
Dashboard
Server Info
Server: 158.106.128.192
PHP: 8.2.33
home
planet5
public_html
bansibaba.com
wp-includes
2026-09-12 19:51:30
Editing: accordion-item.php
Cancel
Save Changes
<?php /** * Server-side rendering of the `core/accordion-item` block. * * @package WordPress * @since 6.9.0 * * @param array{ openByDefault: bool } $attributes The block attributes. * @param string $content The block content. * @return string Returns the updated markup. */ function block_core_accordion_item_render( array $attributes, string $content ): string { if ( '' === $content ) { return $content; } $p = new WP_HTML_Tag_Processor( $content ); $unique_id = wp_unique_id( 'accordion-item-' ); // Initialize the state of the item on the server using a closure, // since we need to get derived state based on the current context. wp_interactivity_state( 'core/accordion', array( 'isOpen' => function () { $context = wp_interactivity_get_context(); return $context['openByDefault']; }, ) ); if ( $p->next_tag( array( 'class_name' => 'wp-block-accordion-item' ) ) ) { $open_by_default = $attributes['openByDefault'] ? 'true' : 'false'; $p->set_attribute( 'data-wp-context', '{ "id": "' . $unique_id . '", "openByDefault": ' . $open_by_default . ' }' ); $p->set_attribute( 'data-wp-class--is-open', 'state.isOpen' ); $p->set_attribute( 'data-wp-init', 'callbacks.initAccordionItems' ); $p->set_attribute( 'data-wp-on-window--hashchange', 'callbacks.hashChange' ); if ( $p->next_tag( array( 'class_name' => 'wp-block-accordion-heading__toggle' ) ) ) { $p->set_attribute( 'data-wp-on--click', 'actions.toggle' ); $p->set_attribute( 'id', $unique_id ); $p->set_attribute( 'aria-controls', $unique_id . '-panel' ); $p->set_attribute( 'data-wp-bind--aria-expanded', 'state.isOpen' ); if ( $p->next_tag( array( 'class_name' => 'wp-block-accordion-panel' ) ) ) { $p->set_attribute( 'id', $unique_id . '-panel' ); $p->set_attribute( 'aria-labelledby', $unique_id ); $p->set_attribute( 'data-wp-bind--hidden', 'state.isHidden' ); $p->set_attribute( 'data-wp-on--beforematch', 'actions.handleBeforeMatch' ); // Only modify content if all directives have been set. $content = $p->get_updated_html(); } } } /* * If an Accordion Item is collapsed by default, ensure any contained IMG has fetchpriority=low to deprioritize it * from contending with resources in the critical rendering path. In contrast, remove the loading attribute to * prevent the image from not being available when the item is expanded. */ if ( ! $attributes['openByDefault'] ) { $processor = new WP_HTML_Tag_Processor( $content ); while ( $processor->next_tag( 'IMG' ) ) { $processor->set_attribute( 'fetchpriority', 'low' ); } $content = $processor->get_updated_html(); } return $content; } /** * Registers the `core/accordion-item` block on server. * * @since 6.9.0 */ function register_block_core_accordion_item() { register_block_type_from_metadata( __DIR__ . '/accordion-item', array( 'render_callback' => 'block_core_accordion_item_render', ) ); } add_action( 'init', 'register_block_core_accordion_item' );
Upload Files
Cancel
Upload
Create New
Cancel
Create
Change Permissions
Cancel
Save
Change Date
Cancel
Save
Rename Item
Cancel
Save
Confirm Delete
Are you sure you want to delete the selected items?
Cancel
Delete