Files
roi-theme/wp-content/plugins/w3-total-cache/SystemOpCache_Plugin_Admin.php
root a22573bf0b Commit inicial - WordPress Análisis de Precios Unitarios
- WordPress core y plugins
- Tema Twenty Twenty-Four configurado
- Plugin allow-unfiltered-html.php simplificado
- .gitignore configurado para excluir wp-config.php y uploads

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-03 21:04:30 -06:00

118 lines
3.4 KiB
PHP
Executable File

<?php
/**
* File: SystemOpCache_Plugin_Admin.php
*
* @package W3TC
*/
namespace W3TC;
/**
* Class SystemOpCache_Plugin_Admin
*/
class SystemOpCache_Plugin_Admin {
/**
* Initializes the plugin by registering actions and filters with WordPress.
*
* Adds functionality for OPcache and APC OPcache support in the admin panel,
* such as menu items, settings, and actions.
*
* @return void
*/
public function run() {
if ( Util_Installed::opcache() || Util_Installed::apc_opcache() ) {
add_filter( 'w3tc_admin_bar_menu', array( $this, 'w3tc_admin_bar_menu' ) );
}
add_filter( 'w3tc_admin_actions', array( $this, 'w3tc_admin_actions' ) );
add_action( 'w3tc_settings_general_boxarea_system_opcache', array( $this, 'w3tc_settings_general_boxarea_system_opcache' ) );
}
/**
* Adds an entry for "System OPcache" to the W3 Total Cache settings anchors.
*
* This method appends the "System OPcache" anchor to the list of settings
* anchors, enabling users to navigate to the relevant settings section.
*
* @param array $anchors Existing settings anchors.
*
* @return array Updated settings anchors including "System OPcache".
*/
public function w3tc_settings_general_anchors( $anchors ) {
$anchors[] = array(
'id' => 'system_opcache',
'text' => 'System OPcache',
);
return $anchors;
}
/**
* Registers the "opcache" handler with W3 Total Cache admin actions.
*
* This static method maps the "opcache" identifier to the `SystemOpCache_AdminActions`
* class, enabling the corresponding actions to be handled correctly.
*
* @param array $handlers Existing action handlers.
*
* @return array Updated action handlers including the "opcache" handler.
*/
public static function w3tc_admin_actions( $handlers ) {
$handlers['opcache'] = 'SystemOpCache_AdminActions';
return $handlers;
}
/**
* Displays the settings box for OPcache in the general settings section.
*
* This method determines the availability of OPcache or APC OPcache and
* their configurations, then includes the view file to render the settings.
*
* @return void
*/
public function w3tc_settings_general_boxarea_system_opcache() {
$opcode_engine = 'Not Available';
$validate_timestamps = false;
if ( Util_Installed::opcache() ) {
$opcode_engine = 'OPcache';
$validate_timestamps = Util_Installed::is_opcache_validate_timestamps();
} elseif ( Util_Installed::apc_opcache() ) {
$opcode_engine = 'APC';
$engine_status = Util_Installed::is_apc_validate_timestamps();
}
include W3TC_DIR . '/SystemOpCache_GeneralPage_View.php';
}
/**
* Adds an OPcache flush menu item to the WordPress admin bar.
*
* This method creates a menu item in the admin bar for flushing the
* OPcache, providing a quick access point for this operation.
*
* @param array $menu_items Existing admin bar menu items.
*
* @return array Updated admin bar menu items including the OPcache flush menu item.
*/
public function w3tc_admin_bar_menu( $menu_items ) {
$current_page = Util_Request::get_string( 'page', 'w3tc_dashboard' );
$menu_items['20910.system_opcache'] = array(
'id' => 'w3tc_flush_opcache',
'parent' => 'w3tc_flush',
'title' => __( 'Opcode Cache', 'w3-total-cache' ),
'href' => Util_Ui::url(
array(
'page' => $current_page,
'w3tc_opcache_flush' => '',
)
),
);
return $menu_items;
}
}