Create New Item
×
Item Type
File
Folder
Item Name
×
Search file in folder and subfolders...
File Manager
/
wp-includes
/
blocks
Advanced Search
Upload
New Item
Settings
Back
Back Up
Advanced Editor
Save
<?php function render_block_core_archives($attributes) { $show_post_count = !empty($attributes['showPostCounts']); $class = ''; if (!empty($attributes['displayAsDropdown'])) { $class .= ' wp-block-archives-dropdown'; $dropdown_id = esc_attr(uniqid('wp-block-archives-')); $title = __('Archives'); $dropdown_args = apply_filters('widget_archives_dropdown_args', array('type' => 'monthly', 'format' => 'option', 'show_post_count' => $show_post_count)); $dropdown_args['echo'] = 0; $archives = wp_get_archives($dropdown_args); switch ($dropdown_args['type']) { case 'yearly': $label = __('Select Year'); break; case 'monthly': $label = __('Select Month'); break; case 'daily': $label = __('Select Day'); break; case 'weekly': $label = __('Select Week'); break; default: $label = __('Select Post'); break; } $label = esc_html($label); $block_content = '<label class="screen-reader-text" for="' . $dropdown_id . '">' . $title . '</label> <select id="' . $dropdown_id . '" name="archive-dropdown" onchange="document.location.href=this.options[this.selectedIndex].value;"> <option value="">' . $label . '</option>' . $archives . '</select>'; return sprintf('<div class="%1$s">%2$s</div>', esc_attr($class), $block_content); } $class .= ' wp-block-archives-list'; $archives_args = apply_filters('widget_archives_args', array('type' => 'monthly', 'show_post_count' => $show_post_count)); $archives_args['echo'] = 0; $archives = wp_get_archives($archives_args); $classnames = esc_attr($class); $wrapper_attributes = get_block_wrapper_attributes(array('class' => $classnames)); if (empty($archives)) { return sprintf('<div %1$s>%2$s</div>', $wrapper_attributes, __('No archives to show.')); } return sprintf('<ul %1$s>%2$s</ul>', $wrapper_attributes, $archives); } function register_block_core_archives() { register_block_type_from_metadata(__DIR__ . '/archives', array('render_callback' => 'render_block_core_archives')); } add_action('init', 'register_block_core_archives');