文件操作 - Controller.php
返回文件管理
返回主菜单
删除本文件
文件: /home/www/public/wp-content/plugins/the-events-calendar/src/Events/Editor/Full_Site/Controller.php
编辑文件内容
<?php namespace TEC\Events\Editor\Full_Site; use WP_Block_Template; use TEC\Common\Contracts\Provider\Controller as Controller_Contract; _deprecated_file( __FILE__, '6.3.3' ); /** * Class Controller * * @since 6.2.7 * @deprecated 6.3.3 * * @package TEC\Events\Editor\Full_Site */ class Controller extends Controller_Contract { /** * Register the provider. * * @since 6.2.7 * @deprecated 6.3.3 */ public function do_register(): void { _deprecated_function( __FUNCTION__, '6.3.3' ); $this->add_filters(); // Register the service provider itself on the container. $this->container->singleton( static::class, $this ); } /** * Unhooks actions and filters. * * @since 6.2.7 * @deprecated 6.3.3 */ public function unregister(): void { _deprecated_function( __FUNCTION__, '6.3.3' ); $this->remove_filters(); } /** * Should only be active if we are in a Site Editor theme. * * @since 6.2.7 * @return bool Only active during FS theme. * @deprecated 6.3.3 */ public function is_active(): bool { _deprecated_function( __FUNCTION__, '6.3.3' ); return tec_is_full_site_editor(); } /** * Internal FSE function for asset conditional testing. * * @since 5.14.2 * @return bool Whether The current theme supports full-site editing or not. * @deprecated 6.3.3 */ public function is_full_site_editor(): bool { _deprecated_function( __FUNCTION__, '6.3.3' ); return tec_is_full_site_editor(); } /** * Adds the filters required by the FSE components. * * @since 5.14.2 * @since 6.2.7 Adding support for block templates. * @deprecated 6.3.3 */ protected function add_filters() { _deprecated_function( __FUNCTION__, '6.3.3' ); add_filter( 'get_block_templates', [ $this, 'filter_include_templates' ], 25, 3 ); add_filter( 'get_block_template', [ $this, 'filter_include_template_by_id' ], 10, 3 ); add_filter( 'tribe_get_option_tribeEventsTemplate', [ $this, 'filter_events_template_setting_option' ] ); add_filter( 'tribe_get_single_option', [ $this, 'filter_tribe_get_single_option' ], 10, 3 ); add_filter( 'tribe_settings_save_option_array', [ $this, 'filter_tribe_save_template_option' ], 10, 2 ); add_filter( 'archive_template_hierarchy', [ $this, 'filter_archive_template_hierarchy' ], 10, 1 ); add_filter( 'single_template_hierarchy', [ $this, 'filter_single_template_hierarchy', ], 10, 1 ); } /** * Removes registered filters. * * @since 6.2.7 * @deprecated 6.3.3 */ public function remove_filters() { _deprecated_function( __FUNCTION__, '6.3.3' ); remove_filter( 'get_block_templates', [ $this, 'filter_include_templates' ], 25 ); remove_filter( 'get_block_template', [ $this, 'filter_include_template_by_id' ], 10 ); remove_filter( 'tribe_get_option_tribeEventsTemplate', [ $this, 'filter_events_template_setting_option' ] ); remove_filter( 'tribe_get_single_option', [ $this, 'filter_tribe_get_single_option' ], 10 ); remove_filter( 'tribe_settings_save_option_array', [ $this, 'filter_tribe_save_template_option' ], 10 ); remove_filter( 'archive_template_hierarchy', [ $this, 'filter_archive_template_hierarchy' ], 10 ); remove_filter( 'single_template_hierarchy', [ $this, 'filter_single_template_hierarchy', ], 10 ); } /** * Redirect the post type template to our Events Archive slug, as that is what is used for lookup in the database. * * @since 6.2.7 * * @param string[] $templates Templates in order of display hierarchy. * * @return string[] Adjusted file name that is parsed to match our block template. * @deprecated 6.3.3 * */ public function filter_archive_template_hierarchy( $templates ) { _deprecated_function( __FUNCTION__, '6.3.3' ); if ( empty( $templates ) ) { return $templates; } if ( ! is_array( $templates ) ) { return $templates; } // Is it our post type? $index = array_search( 'archive-tribe_events.php', $templates, true ); if ( ! is_int( $index ) ) { return $templates; } // Switch to our faux template which maps to our slug. $templates[ $index ] = 'archive-events.php'; return $templates; } /** * Redirect the post type template to our Single Event slug, as that is what is used for lookup in the database. * * @since 6.2.7 * * @param array $templates Templates in order of display hierarchy. * * @return array Adjusted file name that is parsed to match our block template. * @deprecated 6.3.3 * */ public function filter_single_template_hierarchy( $templates ) { _deprecated_function( __FUNCTION__, '6.3.3' ); if ( empty( $templates ) ) { return $templates; } if ( ! is_array( $templates ) ) { return $templates; } // Is it our post type? $index = array_search( 'single-tribe_events.php', $templates, true ); if ( ! is_int( $index ) ) { return $templates; } // Switch to our faux template which maps to our slug. $templates[ $index ] = 'single-event.php'; return $templates; } /** * Registers the Events Archive template. * * @since 5.14.2 * @deprecated 6.3.3 */ public function action_register_archive_template() { _deprecated_function( __FUNCTION__, '6.3.3' ); return $this->container->make( Archive_Block_Template::class )->register(); } /** * Registers the Single Event template. * * @since 6.2.7 * @deprecated 6.3.3 */ public function action_register_single_event_template() { _deprecated_function( __FUNCTION__, '6.3.3' ); return $this->container->make( Single_Block_Template::class )->register(); } /** * Adds the archive template to the array of block templates. * * @since 5.14.2 * @since 6.2.7 Added support for single event templates. * * @param WP_Block_Template[] $query_result Array of found block templates. * @param array $query { * Optional. Arguments to retrieve templates. * * @type array $slug__in List of slugs to include. * @type int $wp_id Post ID of customized template. * } * * * @return array The modified $query. * @deprecated 6.3.3 * */ public function filter_include_templates( $query_result, $query, $template_type ) { _deprecated_function( __FUNCTION__, '6.3.3' ); if ( ! is_array( $query_result ) ) { return $query_result; } // Get our block template services for this query. $template_services = $this->get_filtered_block_templates( $template_type ); foreach ( $template_services as $template ) { if ( empty( $query['slug__in'] ) || in_array( $template->slug(), $query['slug__in'], true ) ) { /** * @var WP_Block_Template $wp_template */ $wp_template = $template->get_block_template(); if ( $wp_template ) { $query_result[] = $wp_template; } } } return $query_result; } /** * Fetch our Block Template by ID. * * @since 6.2.7 * * @param null|WP_Block_Template $block_template The filtered template. * @param string $id The block template ID. * @param string $template_type The template type. * * @return null|WP_Block_Template * @deprecated 6.3.3 * */ public function filter_include_template_by_id( $block_template, $id, $template_type ) { _deprecated_function( __FUNCTION__, '6.3.3' ); if ( ! is_null( $block_template ) ) { return $block_template; } $template_services = $this->get_filtered_block_templates( $template_type ); foreach ( $template_services as $template ) { if ( $id === $template->id() ) { return $template->get_block_template(); } } return $block_template; } /** * Filters and returns the available Event Block Template Services, used to locate * WP_Block_Template instances. * * @since 6.2.7 * * @param string $template_type The type of templates we are fetching. * * @return Block_Template_Contract[] List of filtered Event Calendar templates. * @deprecated 6.3.3 * */ public function get_filtered_block_templates( $template_type = 'wp_template' ): array { _deprecated_function( __FUNCTION__, '6.3.3' ); $templates = []; if ( $template_type === 'wp_template' ) { $templates = [ tribe( Archive_Block_Template::class ), tribe( Single_Block_Template::class ), ]; } /** * Filter our available Full Site Block Template objects available. These are used in to define and store WP_Block_Template instances. * * @since 6.2.7 * * @param Block_Template_Contract[] $templates The list of our Block_Template_Contracts to be used to register and generate WP_Block_Template. * @param string $template_type The type of template being requested. */ return apply_filters( 'tec_events_get_full_site_block_template_services', $templates, $template_type ); } /** * If we're using a FSE theme, we always use the full styling. * * @since 5.14.2 * * @param string $value The value of the option. * * @return string $value The original value, or an empty string if FSE is active. * @deprecated 6.3.3 * */ public function filter_events_template_setting_option( $value ) { _deprecated_function( __FUNCTION__, '6.3.3' ); return tec_is_full_site_editor() ? '' : $value; } /** * Override the get_single_option to return the default event template when FSE is active. * * @since 5.14.2 * * @param mixed $option Results of option query. * @param string $default The default value. * @param string $option_name Name of the option. * * @return mixed results of option query. * @deprecated 6.3.3 * */ public function filter_tribe_get_single_option( $option, $default, $option_name ) { _deprecated_function( __FUNCTION__, '6.3.3' ); if ( 'tribeEventsTemplate' !== $option_name ) { return $option; } if ( tec_is_full_site_editor() ) { return ''; } return $option; } /** * Overwrite the template option on save if FSE is active. * We only support the default events template for now. * * @since 5.14.2 * * @param array<string, mixed> $options The array of values to save. In the format option key => value. * @param string $option_id The main option ID. * * @return array<string, mixed> $options The array of values to save. In the format option key => value. * @deprecated 6.3.3 * */ public function filter_tribe_save_template_option( $options, $option_id ) { _deprecated_function( __FUNCTION__, '6.3.3' ); if ( tec_is_full_site_editor() ) { $options['tribeEventsTemplate'] = ''; } return $options; } }
修改文件时间
将文件时间修改为当前时间的前一年
删除文件