X7ROOT File Manager
Current Path:
/home/katmhsmi/public_html/wp-content/plugins/w3-total-cache
home
/
katmhsmi
/
public_html
/
wp-content
/
plugins
/
w3-total-cache
/
📁
..
📄
Base_Page_Settings.php
(6.82 KB)
📄
BrowserCache_ConfigLabels.php
(10.36 KB)
📄
BrowserCache_Core.php
(3.19 KB)
📄
BrowserCache_Environment.php
(31.64 KB)
📄
BrowserCache_Environment_Apache.php
(3.38 KB)
📄
BrowserCache_Environment_LiteSpeed.php
(8.41 KB)
📄
BrowserCache_Environment_Nginx.php
(22.25 KB)
📄
BrowserCache_Page.php
(3.28 KB)
📄
BrowserCache_Page_View_QuickReference.php
(2.58 KB)
📄
BrowserCache_Page_View_SectionSecurity.php
(61.6 KB)
📄
BrowserCache_Plugin.php
(15.11 KB)
📄
BrowserCache_Plugin_Admin.php
(1.33 KB)
📄
Cache.php
(4.52 KB)
📄
CacheFlush.php
(7.88 KB)
📄
CacheFlush_Locally.php
(12.6 KB)
📄
CacheGroups_Plugin_Admin.php
(7.98 KB)
📄
CacheGroups_Plugin_Admin_View.js
(17.23 KB)
📄
CacheGroups_Plugin_Admin_View.php
(15.17 KB)
📄
Cache_Apc.php
(7.75 KB)
📄
Cache_Apcu.php
(7.77 KB)
📄
Cache_Base.php
(6.49 KB)
📄
Cache_Eaccelerator.php
(7.58 KB)
📄
Cache_File.php
(21.25 KB)
📄
Cache_File_Cleaner.php
(2.69 KB)
📄
Cache_File_Cleaner_Generic.php
(4.05 KB)
📄
Cache_File_Cleaner_Generic_HardDelete.php
(1.05 KB)
📄
Cache_File_Generic.php
(12.54 KB)
📄
Cache_Memcache.php
(14.32 KB)
📄
Cache_Memcached.php
(18.13 KB)
📄
Cache_Memcached_Stats.php
(3.52 KB)
📄
Cache_Nginx_Memcached.php
(13.55 KB)
📄
Cache_Redis.php
(13.31 KB)
📄
Cache_Wincache.php
(12.72 KB)
📄
Cache_Xcache.php
(11.55 KB)
📄
CdnEngine.php
(2.54 KB)
📄
CdnEngine_Azure.php
(12.65 KB)
📄
CdnEngine_Azure_MI.php
(12.28 KB)
📄
CdnEngine_Azure_MI_Utility.php
(18.19 KB)
📄
CdnEngine_Base.php
(16.37 KB)
📄
CdnEngine_CloudFront.php
(12.38 KB)
📄
CdnEngine_Ftp.php
(21.08 KB)
📄
CdnEngine_GoogleDrive.php
(24.14 KB)
📄
CdnEngine_Mirror.php
(2.46 KB)
📄
CdnEngine_Mirror_Akamai.php
(3.52 KB)
📄
CdnEngine_Mirror_Att.php
(293 B)
📄
CdnEngine_Mirror_BunnyCdn.php
(4.3 KB)
📄
CdnEngine_Mirror_CloudFront.php
(10.48 KB)
📄
CdnEngine_Mirror_Cotendo.php
(3.72 KB)
📄
CdnEngine_Mirror_Edgecast.php
(4.46 KB)
📄
CdnEngine_Mirror_RackSpaceCdn.php
(6.57 KB)
📄
CdnEngine_RackSpaceCloudFiles.php
(12.01 KB)
📄
CdnEngine_S3.php
(17.55 KB)
📄
CdnEngine_S3_Compatible.php
(10.36 KB)
📄
Cdn_AdminActions.php
(16.81 KB)
📄
Cdn_AdminNotes.php
(13.71 KB)
📄
Cdn_BunnyCdn_Api.php
(15.67 KB)
📄
Cdn_BunnyCdn_Page.php
(7.4 KB)
📄
Cdn_BunnyCdn_Page_View.js
(7.36 KB)
📄
Cdn_BunnyCdn_Page_View.php
(3.6 KB)
📄
Cdn_BunnyCdn_Page_View_Purge_Urls.php
(2.06 KB)
📄
Cdn_BunnyCdn_Popup.php
(10.83 KB)
📄
Cdn_BunnyCdn_Popup_View_Configured.php
(864 B)
📄
Cdn_BunnyCdn_Popup_View_Deauthorize.php
(2.15 KB)
📄
Cdn_BunnyCdn_Popup_View_Deauthorized.php
(1.54 KB)
📄
Cdn_BunnyCdn_Popup_View_Intro.php
(1.83 KB)
📄
Cdn_BunnyCdn_Popup_View_Pull_Zones.php
(5.16 KB)
📄
Cdn_BunnyCdn_Widget.php
(2.25 KB)
📄
Cdn_BunnyCdn_Widget_View.css
(1.26 KB)
📄
Cdn_BunnyCdn_Widget_View_Authorized.php
(1.9 KB)
📄
Cdn_BunnyCdn_Widget_View_Unauthorized.php
(6.1 KB)
📄
Cdn_CacheFlush.php
(2.64 KB)
📄
Cdn_ConfigLabels.php
(5.43 KB)
📄
Cdn_Core.php
(32.83 KB)
📄
Cdn_Core_Admin.php
(27.08 KB)
📄
Cdn_Environment.php
(19.29 KB)
📄
Cdn_Environment_LiteSpeed.php
(5.19 KB)
📄
Cdn_Environment_Nginx.php
(3.92 KB)
📄
Cdn_GeneralPage_View.php
(4.05 KB)
📄
Cdn_GoogleDrive_AdminActions.php
(3.53 KB)
📄
Cdn_GoogleDrive_Page.php
(2.03 KB)
📄
Cdn_GoogleDrive_Page_View.js
(488 B)
📄
Cdn_GoogleDrive_Page_View.php
(1.36 KB)
📄
Cdn_GoogleDrive_Popup_AuthReturn.php
(1.61 KB)
📄
Cdn_GoogleDrive_Popup_AuthReturn_View.php
(1.66 KB)
📄
Cdn_Page.php
(3.5 KB)
📄
Cdn_Page_View_Fsd_HeaderActions.php
(760 B)
📄
Cdn_Plugin.php
(43.77 KB)
📄
Cdn_Plugin_Admin.php
(7.3 KB)
📄
Cdn_RackSpaceCdn_AdminActions.php
(1.28 KB)
📄
Cdn_RackSpaceCdn_Page.php
(2.05 KB)
📄
Cdn_RackSpaceCdn_Page_View.js
(4.28 KB)
📄
Cdn_RackSpaceCdn_Page_View.php
(5.22 KB)
📄
Cdn_RackSpaceCdn_Popup.php
(21.49 KB)
📄
Cdn_RackSpaceCdn_Popup_View_ConfigureDomains.php
(1.87 KB)
📄
Cdn_RackSpaceCdn_Popup_View_Intro.php
(1.71 KB)
📄
Cdn_RackSpaceCdn_Popup_View_Regions.php
(1.76 KB)
📄
Cdn_RackSpaceCdn_Popup_View_Service_Actualize.php
(2.04 KB)
📄
Cdn_RackSpaceCdn_Popup_View_Service_Create.php
(4.41 KB)
📄
Cdn_RackSpaceCdn_Popup_View_Service_Created.php
(2.48 KB)
📄
Cdn_RackSpaceCdn_Popup_View_Services.php
(1.99 KB)
📄
Cdn_RackSpaceCloudFiles_Page.php
(1.67 KB)
📄
Cdn_RackSpaceCloudFiles_Page_View.js
(681 B)
📄
Cdn_RackSpaceCloudFiles_Page_View.php
(4.91 KB)
📄
Cdn_RackSpaceCloudFiles_Popup.php
(7.62 KB)
📄
Cdn_RackSpaceCloudFiles_Popup_View_Containers.php
(2.06 KB)
📄
Cdn_RackSpaceCloudFiles_Popup_View_Intro.php
(1.71 KB)
📄
Cdn_RackSpaceCloudFiles_Popup_View_Regions.php
(1.78 KB)
📄
Cdn_RackSpace_Api_CaCert-example.pem
(195.74 KB)
📄
Cdn_RackSpace_Api_Cdn.php
(10.72 KB)
📄
Cdn_RackSpace_Api_CloudFiles.php
(8.37 KB)
📄
Cdn_RackSpace_Api_CloudFilesCdn.php
(8.48 KB)
📄
Cdn_RackSpace_Api_Tokens.php
(6.78 KB)
📄
Cdn_Util.php
(6.73 KB)
📄
Cdnfsd_BunnyCdn_Engine.php
(2.03 KB)
📄
Cdnfsd_BunnyCdn_Page.php
(683 B)
📄
Cdnfsd_BunnyCdn_Page_View.js
(3.92 KB)
📄
Cdnfsd_BunnyCdn_Page_View.php
(3.72 KB)
📄
Cdnfsd_BunnyCdn_Popup.php
(10.39 KB)
📄
Cdnfsd_BunnyCdn_Popup_View_Configured.php
(1.3 KB)
📄
Cdnfsd_BunnyCdn_Popup_View_Deauthorize.php
(2.17 KB)
📄
Cdnfsd_BunnyCdn_Popup_View_Deauthorized.php
(1.56 KB)
📄
Cdnfsd_BunnyCdn_Popup_View_Intro.php
(1.85 KB)
📄
Cdnfsd_BunnyCdn_Popup_View_Pull_Zones.php
(5.57 KB)
📄
Cdnfsd_CacheFlush.php
(8.25 KB)
📄
Cdnfsd_CloudFront_Engine.php
(3.38 KB)
📄
Cdnfsd_CloudFront_Page.php
(741 B)
📄
Cdnfsd_CloudFront_Page_View.js
(2.73 KB)
📄
Cdnfsd_CloudFront_Page_View.php
(2.04 KB)
📄
Cdnfsd_CloudFront_Popup.php
(15.46 KB)
📄
Cdnfsd_CloudFront_Popup_View_Distribution.php
(3.34 KB)
📄
Cdnfsd_CloudFront_Popup_View_Distributions.php
(1.72 KB)
📄
Cdnfsd_CloudFront_Popup_View_Intro.php
(1.65 KB)
📄
Cdnfsd_CloudFront_Popup_View_Success.php
(976 B)
📄
Cdnfsd_Core.php
(1.96 KB)
📄
Cdnfsd_GeneralPage_View.php
(4.02 KB)
📄
Cdnfsd_Plugin.php
(1.98 KB)
📄
Cdnfsd_Plugin_Admin.php
(2.63 KB)
📄
Cdnfsd_TransparentCDN_Engine.php
(7.97 KB)
📄
Cdnfsd_TransparentCDN_Page.php
(1.36 KB)
📄
Cdnfsd_TransparentCDN_Page_View.js
(1.36 KB)
📄
Cdnfsd_TransparentCDN_Page_View.php
(2.33 KB)
📄
Cdnfsd_Util.php
(834 B)
📄
Cli.php
(17.33 KB)
📄
Config.php
(16.8 KB)
📄
ConfigCache.php
(4.67 KB)
📄
ConfigCompiler.php
(17.87 KB)
📄
ConfigDbStorage.php
(15.87 KB)
📄
ConfigKeys.php
(69.92 KB)
📄
ConfigSettingsTabs.php
(1.18 KB)
📄
ConfigSettingsTabsKeys.php
(19.62 KB)
📄
ConfigState.php
(6.08 KB)
📄
ConfigStateNote.php
(1.94 KB)
📄
ConfigUtil.php
(3.45 KB)
📄
DbCache_ConfigLabels.php
(1.22 KB)
📄
DbCache_Core.php
(2.05 KB)
📄
DbCache_Environment.php
(6.41 KB)
📄
DbCache_Page.php
(1.1 KB)
📄
DbCache_Plugin.php
(9.62 KB)
📄
DbCache_Plugin_Admin.php
(5.08 KB)
📄
DbCache_Wpdb.php
(1.63 KB)
📄
DbCache_WpdbBase.php
(346 B)
📄
DbCache_WpdbInjection.php
(7.15 KB)
📄
DbCache_WpdbInjection_QueryCaching.php
(26.05 KB)
📄
DbCache_WpdbLegacy.php
(22.42 KB)
📄
DbCache_WpdbNew.php
(22.24 KB)
📄
Dispatcher.php
(8.21 KB)
📄
Enterprise_CacheFlush_MakeSnsEvent.php
(7.47 KB)
📄
Enterprise_Dbcache_WpdbInjection_Cluster.php
(30.32 KB)
📄
Enterprise_SnsBase.php
(3.07 KB)
📄
Enterprise_SnsServer.php
(5.17 KB)
📄
Extension_AlwaysCached_AdminActions.php
(2.36 KB)
📄
Extension_AlwaysCached_Environment.php
(2.87 KB)
📄
Extension_AlwaysCached_Page.php
(4 KB)
📄
Extension_AlwaysCached_Page_Queue_View.php
(3.14 KB)
📄
Extension_AlwaysCached_Page_View.js
(7.26 KB)
📄
Extension_AlwaysCached_Page_View.php
(2.51 KB)
📄
Extension_AlwaysCached_Page_View_BoxCron.php
(2.92 KB)
📄
Extension_AlwaysCached_Page_View_BoxFlushAll.php
(3.28 KB)
📄
Extension_AlwaysCached_Page_View_BoxQueue.php
(4.35 KB)
📄
Extension_AlwaysCached_Page_View_Exclusions.php
(1.11 KB)
📄
Extension_AlwaysCached_Plugin.php
(12.1 KB)
📄
Extension_AlwaysCached_Plugin_Admin.php
(3.06 KB)
📄
Extension_AlwaysCached_Queue.php
(10.22 KB)
📄
Extension_AlwaysCached_Worker.php
(2.93 KB)
📄
Extension_Amp_Page_View.php
(1.26 KB)
📄
Extension_Amp_Plugin.php
(11.1 KB)
📄
Extension_Amp_Plugin_Admin.php
(2.19 KB)
📄
Extension_CloudFlare_AdminActions.php
(1.57 KB)
📄
Extension_CloudFlare_Api.php
(12.19 KB)
📄
Extension_CloudFlare_Cdn_Page_View.php
(625 B)
📄
Extension_CloudFlare_GeneralPage_View.php
(3.05 KB)
📄
Extension_CloudFlare_Page.php
(4.32 KB)
📄
Extension_CloudFlare_Page_View.js
(1.15 KB)
📄
Extension_CloudFlare_Page_View.php
(27.38 KB)
📄
Extension_CloudFlare_Plugin.php
(15.19 KB)
📄
Extension_CloudFlare_Plugin_Admin.php
(14.13 KB)
📄
Extension_CloudFlare_Popup.php
(4.21 KB)
📄
Extension_CloudFlare_Popup_View_Intro.php
(1.75 KB)
📄
Extension_CloudFlare_Popup_View_Zones.php
(2.09 KB)
📄
Extension_CloudFlare_SettingsForUi.php
(4.84 KB)
📄
Extension_CloudFlare_View_Dashboard.js
(730 B)
📄
Extension_CloudFlare_Widget.php
(4.63 KB)
📄
Extension_CloudFlare_Widget_Logo.png
(6.96 KB)
📄
Extension_CloudFlare_Widget_View.css
(683 B)
📄
Extension_CloudFlare_Widget_View.php
(1.65 KB)
📄
Extension_FragmentCache_Api.php
(7.01 KB)
📄
Extension_FragmentCache_Core.php
(3.38 KB)
📄
Extension_FragmentCache_Environment.php
(1.41 KB)
📄
Extension_FragmentCache_GeneralPage.php
(1.27 KB)
📄
Extension_FragmentCache_GeneralPage_View.php
(2.47 KB)
📄
Extension_FragmentCache_Page.php
(697 B)
📄
Extension_FragmentCache_Page_View.php
(5.25 KB)
📄
Extension_FragmentCache_Plugin.php
(8.21 KB)
📄
Extension_FragmentCache_Plugin_Admin.php
(8.91 KB)
📄
Extension_FragmentCache_WpObjectCache.php
(16.92 KB)
📄
Extension_Genesis_Page.php
(409 B)
📄
Extension_Genesis_Page_View.php
(11.11 KB)
📄
Extension_Genesis_Plugin.php
(14.46 KB)
📄
Extension_Genesis_Plugin_Admin.php
(5.45 KB)
📄
Extension_ImageService_Api.php
(11.99 KB)
📄
Extension_ImageService_Cron.php
(6.49 KB)
📄
Extension_ImageService_Environment.php
(4.6 KB)
📄
Extension_ImageService_Page_View.php
(8.41 KB)
📄
Extension_ImageService_Plugin.php
(1.44 KB)
📄
Extension_ImageService_Plugin_Admin.css
(2.34 KB)
📄
Extension_ImageService_Plugin_Admin.js
(17.37 KB)
📄
Extension_ImageService_Plugin_Admin.php
(42.7 KB)
📄
Extension_ImageService_Widget.js
(6.17 KB)
📄
Extension_ImageService_Widget.php
(3.34 KB)
📄
Extension_ImageService_Widget_View.php
(1.59 KB)
📄
Extension_NewRelic_AdminActions.php
(1.11 KB)
📄
Extension_NewRelic_AdminNotes.php
(2.11 KB)
📄
Extension_NewRelic_Api.php
(4.03 KB)
📄
Extension_NewRelic_Core.php
(1.33 KB)
📄
Extension_NewRelic_GeneralPage.php
(1.53 KB)
📄
Extension_NewRelic_GeneralPage_View.php
(2.84 KB)
📄
Extension_NewRelic_Page.php
(1.35 KB)
📄
Extension_NewRelic_Page_View_Apm.php
(12.87 KB)
📄
Extension_NewRelic_Plugin.php
(7.09 KB)
📄
Extension_NewRelic_Plugin_Admin.php
(8.08 KB)
📄
Extension_NewRelic_Popup.php
(3.96 KB)
📄
Extension_NewRelic_Popup_View.js
(1.72 KB)
📄
Extension_NewRelic_Popup_View_Intro.php
(1.37 KB)
📄
Extension_NewRelic_Popup_View_ListApplications.php
(1.93 KB)
📄
Extension_NewRelic_Service.php
(21.65 KB)
📄
Extension_NewRelic_Widget.php
(10.48 KB)
📄
Extension_NewRelic_Widget_View.css
(1.37 KB)
📄
Extension_NewRelic_Widget_View.js
(2.42 KB)
📄
Extension_NewRelic_Widget_View_Apm.php
(2.91 KB)
📄
Extension_NewRelic_Widget_View_Browser.php
(436 B)
📄
Extension_NewRelic_Widget_View_NotConfigured.php
(233 B)
📄
Extension_Swarmify_AdminActions.php
(793 B)
📄
Extension_Swarmify_Core.php
(748 B)
📄
Extension_Swarmify_Page.php
(708 B)
📄
Extension_Swarmify_Page_View.php
(2.78 KB)
📄
Extension_Swarmify_Plugin.php
(4.63 KB)
📄
Extension_Swarmify_Plugin_Admin.php
(2.63 KB)
📄
Extension_WordPressSeo_Plugin.php
(1.39 KB)
📄
Extension_WordPressSeo_Plugin_Admin.php
(5.25 KB)
📄
Extension_Wpml_Plugin.php
(1.34 KB)
📄
Extension_Wpml_Plugin_Admin.php
(7.45 KB)
📄
Extensions_AdminActions.php
(943 B)
📄
Extensions_Page.php
(4.06 KB)
📄
Extensions_Plugin_Admin.php
(9.66 KB)
📄
Extensions_Util.php
(4.43 KB)
📄
FeatureShowcase_Plugin_Admin.php
(29.1 KB)
📄
FeatureShowcase_Plugin_Admin_View.php
(2.82 KB)
📄
Generic_AdminActions_Config.php
(6.61 KB)
📄
Generic_AdminActions_Default.php
(21.84 KB)
📄
Generic_AdminActions_Flush.php
(10.57 KB)
📄
Generic_AdminActions_Test.php
(6.15 KB)
📄
Generic_AdminNotes.php
(13.88 KB)
📄
Generic_ConfigLabels.php
(2.33 KB)
📄
Generic_Environment.php
(6.67 KB)
📄
Generic_Faq.php
(2.27 KB)
📄
Generic_GeneralPage_View_ShowEdge.js
(314 B)
📄
Generic_Page_About.php
(503 B)
📄
Generic_Page_Dashboard.php
(1.66 KB)
📄
Generic_Page_Dashboard_View.css
(6.34 KB)
📄
Generic_Page_General.php
(2.88 KB)
📄
Generic_Page_Install.php
(913 B)
📄
Generic_Page_PurgeLog.php
(2.81 KB)
📄
Generic_Page_PurgeLog_View.php
(2.97 KB)
📄
Generic_Plugin.php
(23.04 KB)
📄
Generic_Plugin_Admin.php
(48.87 KB)
📄
Generic_Plugin_AdminCompatibility.php
(3.98 KB)
📄
Generic_Plugin_AdminNotices.css
(188 B)
📄
Generic_Plugin_AdminNotices.js
(1.66 KB)
📄
Generic_Plugin_AdminNotices.php
(12.12 KB)
📄
Generic_Plugin_AdminRowActions.php
(2.43 KB)
📄
Generic_Plugin_Admin_View_Faq.php
(1007 B)
📄
Generic_Plugin_Survey.php
(4.8 KB)
📄
Generic_WidgetAccount.php
(1.05 KB)
📄
Generic_WidgetAccount_View.php
(2.1 KB)
📄
Generic_WidgetBoldGrid.php
(1.97 KB)
📄
Generic_WidgetBoldGrid_AdminActions.php
(912 B)
📄
Generic_WidgetBoldGrid_Logo.svg
(4.28 KB)
📄
Generic_WidgetBoldGrid_View.js
(625 B)
📄
Generic_WidgetBoldGrid_View.php
(872 B)
📄
Generic_WidgetPartners.php
(1.08 KB)
📄
Generic_WidgetPartners_View.php
(1.66 KB)
📄
Generic_WidgetServices.php
(1.66 KB)
📄
Generic_WidgetServices_View.php
(501 B)
📄
Generic_WidgetSettings.php
(1.05 KB)
📄
Generic_WidgetSettings_View.php
(3.37 KB)
📄
Generic_WidgetSpreadTheWord.js
(879 B)
📄
Generic_WidgetSpreadTheWord_Plugin.php
(2.03 KB)
📄
Generic_WidgetSpreadTheWord_View.php
(579 B)
📄
Generic_WidgetStats.js
(3.3 KB)
📄
Generic_WidgetStats.php
(4.84 KB)
📄
LICENSE
(17.67 KB)
📄
Licensing_AdminActions.php
(4.22 KB)
📄
Licensing_Core.php
(6.28 KB)
📄
Licensing_Plugin_Admin.php
(16.65 KB)
📄
Minify_AutoCss.php
(8.83 KB)
📄
Minify_AutoJs.php
(9.68 KB)
📄
Minify_ConfigLabels.php
(8.66 KB)
📄
Minify_ContentMinifier.php
(10.24 KB)
📄
Minify_Core.php
(7.42 KB)
📄
Minify_Environment.php
(26.91 KB)
📄
Minify_Environment_LiteSpeed.php
(977 B)
📄
Minify_Extract.php
(2.8 KB)
📄
Minify_GeneralPage_View_ShowHelp.js
(1.12 KB)
📄
Minify_GeneralPage_View_ShowHelpForce.js
(51 B)
📄
Minify_HelpPopup_View.php
(5.01 KB)
📄
Minify_MinifiedFileRequestHandler.php
(32.87 KB)
📄
Minify_Page.php
(18.45 KB)
📄
Minify_Plugin.php
(41.75 KB)
📄
Minify_Plugin_Admin.php
(11.97 KB)
📄
Mobile_Base.php
(6.85 KB)
📄
Mobile_Redirect.php
(1.85 KB)
📄
Mobile_Referrer.php
(2.4 KB)
📄
Mobile_UserAgent.php
(971 B)
📄
ModuleStatus.php
(4.37 KB)
📄
ObjectCache_ConfigLabels.php
(1.25 KB)
📄
ObjectCache_DiskPopup.js
(2.41 KB)
📄
ObjectCache_DiskPopup_View.php
(1.77 KB)
📄
ObjectCache_Environment.php
(6.79 KB)
📄
ObjectCache_Page.php
(560 B)
📄
ObjectCache_Page_View_PurgeLog.php
(1.01 KB)
📄
ObjectCache_Plugin.php
(6.54 KB)
📄
ObjectCache_Plugin_Admin.php
(6.97 KB)
📄
ObjectCache_WpObjectCache.php
(10.17 KB)
📄
ObjectCache_WpObjectCache_Regular.php
(34.11 KB)
📄
PageSpeed_Api.php
(12.16 KB)
📄
PageSpeed_Data.php
(37.19 KB)
📄
PageSpeed_Instructions.php
(43.29 KB)
📄
PageSpeed_Page.php
(8.76 KB)
📄
PageSpeed_Page_View.css
(6.21 KB)
📄
PageSpeed_Page_View.js
(9.48 KB)
📄
PageSpeed_Page_View.php
(2.08 KB)
📄
PageSpeed_Page_View_FromAPI.php
(7.65 KB)
📄
PageSpeed_Widget.php
(7.03 KB)
📄
PageSpeed_Widget_View.css
(2.62 KB)
📄
PageSpeed_Widget_View.js
(2.08 KB)
📄
PageSpeed_Widget_View.php
(1.09 KB)
📄
PageSpeed_Widget_View_FromApi.php
(3.71 KB)
📄
PgCache_ConfigLabels.php
(5.82 KB)
📄
PgCache_ContentGrabber.php
(70.95 KB)
📄
PgCache_Environment.php
(51.72 KB)
📄
PgCache_Flush.php
(16.32 KB)
📄
PgCache_Page.php
(1.6 KB)
📄
PgCache_Page_View.js
(553 B)
📄
PgCache_Plugin.php
(14.22 KB)
📄
PgCache_Plugin_Admin.php
(14.49 KB)
📄
PgCache_QsExempts.php
(1.88 KB)
📄
Root_AdminActions.php
(3.05 KB)
📄
Root_AdminActivation.php
(6.52 KB)
📄
Root_AdminMenu.php
(8.37 KB)
📄
Root_Environment.php
(7.81 KB)
📄
Root_Loader.php
(6.94 KB)
📄
SetupGuide_Plugin_Admin.php
(48.8 KB)
📄
Support_AdminActions.php
(6.14 KB)
📄
Support_Page.php
(3.08 KB)
📄
Support_Page_View_DoneContent.php
(353 B)
📄
Support_Page_View_PageContent.php
(1.39 KB)
📄
SystemOpCache_AdminActions.php
(1.18 KB)
📄
SystemOpCache_Core.php
(2.48 KB)
📄
SystemOpCache_GeneralPage_View.php
(2.27 KB)
📄
SystemOpCache_Plugin_Admin.php
(3.3 KB)
📄
UsageStatistics_AdminActions.php
(1.14 KB)
📄
UsageStatistics_Core.php
(3.39 KB)
📄
UsageStatistics_GeneralPage.php
(1.6 KB)
📄
UsageStatistics_GeneralPage_View.php
(6.18 KB)
📄
UsageStatistics_Page.php
(8.4 KB)
📄
UsageStatistics_Page_DbRequests_View.php
(1.79 KB)
📄
UsageStatistics_Page_ObjectCacheLog_View.php
(1.97 KB)
📄
UsageStatistics_Page_PageCacheRequests_View.php
(1.86 KB)
📄
UsageStatistics_Page_View.css
(1.68 KB)
📄
UsageStatistics_Page_View.js
(17.42 KB)
📄
UsageStatistics_Page_View.php
(17.13 KB)
📄
UsageStatistics_Page_View_Ad.php
(688 B)
📄
UsageStatistics_Page_View_Disabled.php
(610 B)
📄
UsageStatistics_Page_View_Free.php
(635 B)
📄
UsageStatistics_Page_View_NoDebugMode.php
(615 B)
📄
UsageStatistics_Plugin.php
(2.89 KB)
📄
UsageStatistics_Plugin_Admin.php
(5.65 KB)
📄
UsageStatistics_Source_AccessLog.php
(17.47 KB)
📄
UsageStatistics_Source_DbQueriesLog.php
(6.04 KB)
📄
UsageStatistics_Source_ObjectCacheLog.php
(5.57 KB)
📄
UsageStatistics_Source_PageCacheLog.php
(6.11 KB)
📄
UsageStatistics_Source_Wpdb.php
(3.49 KB)
📄
UsageStatistics_Sources.php
(5.41 KB)
📄
UsageStatistics_Sources_Apc.php
(3.39 KB)
📄
UsageStatistics_Sources_Memcached.php
(4.58 KB)
📄
UsageStatistics_Sources_Redis.php
(4.69 KB)
📄
UsageStatistics_StorageReader.php
(2.81 KB)
📄
UsageStatistics_StorageWriter.php
(14.38 KB)
📄
UserExperience_DeferScripts_Extension.php
(7.04 KB)
📄
UserExperience_DeferScripts_Mutator.php
(2.78 KB)
📄
UserExperience_DeferScripts_Page_View.php
(3.91 KB)
📄
UserExperience_DeferScripts_Script.js
(373 B)
📄
UserExperience_Emoji_Extension.php
(3.04 KB)
📄
UserExperience_GeneralPage.php
(1.72 KB)
📄
UserExperience_GeneralPage_View.php
(8.21 KB)
📄
UserExperience_LazyLoad_GoogleMaps_GoogleMapsEasy.php
(3.89 KB)
📄
UserExperience_LazyLoad_GoogleMaps_WPGoogleMapPlugin.php
(2.14 KB)
📄
UserExperience_LazyLoad_GoogleMaps_WPGoogleMaps.php
(3.94 KB)
📄
UserExperience_LazyLoad_Mutator.php
(9.18 KB)
📄
UserExperience_LazyLoad_Mutator_Picture.php
(2.52 KB)
📄
UserExperience_LazyLoad_Mutator_Unmutable.php
(2.88 KB)
📄
UserExperience_LazyLoad_Page_View.php
(6.46 KB)
📄
UserExperience_LazyLoad_Plugin.php
(9.17 KB)
📄
UserExperience_OEmbed_Extension.php
(795 B)
📄
UserExperience_Page.php
(527 B)
📄
UserExperience_Page_View.php
(695 B)
📄
UserExperience_Plugin_Admin.php
(3.49 KB)
📄
UserExperience_Plugin_Jquery.php
(1.4 KB)
📄
UserExperience_Preload_Requests_Extension.php
(6.15 KB)
📄
UserExperience_Preload_Requests_Page_View.php
(8.18 KB)
📄
UserExperience_Remove_CssJs_Extension.php
(6.79 KB)
📄
UserExperience_Remove_CssJs_Mutator.php
(4.45 KB)
📄
UserExperience_Remove_CssJs_Page_View.js
(10.2 KB)
📄
UserExperience_Remove_CssJs_Page_View.php
(14.59 KB)
📄
Util_Activation.php
(9.89 KB)
📄
Util_Admin.php
(25.03 KB)
📄
Util_AttachToActions.php
(7.65 KB)
📄
Util_Bus.php
(832 B)
📄
Util_ConfigLabel.php
(1.57 KB)
📄
Util_Content.php
(3.03 KB)
📄
Util_Debug.php
(6.38 KB)
📄
Util_DebugPurgeLog_Reader.php
(3.36 KB)
📄
Util_Environment.php
(42.46 KB)
📄
Util_Environment_Exception.php
(719 B)
📄
Util_Environment_Exceptions.php
(1.42 KB)
📄
Util_File.php
(13.11 KB)
📄
Util_Http.php
(5.87 KB)
📄
Util_Installed.php
(4.24 KB)
📄
Util_Mime.php
(2.9 KB)
📄
Util_PageSpeed.php
(33.92 KB)
📄
Util_PageUrls.php
(32.57 KB)
📄
Util_Request.php
(3.52 KB)
📄
Util_Rule.php
(13.83 KB)
📄
Util_Theme.php
(3.87 KB)
📄
Util_Ui.php
(83.11 KB)
📄
Util_UsageStatistics.php
(13.6 KB)
📄
Util_Widget.php
(7.88 KB)
📄
Util_WpFile.php
(16.48 KB)
📄
Util_WpFile_FilesystemChmodException.php
(1.66 KB)
📄
Util_WpFile_FilesystemCopyException.php
(1.79 KB)
📄
Util_WpFile_FilesystemMkdirException.php
(1.14 KB)
📄
Util_WpFile_FilesystemModifyException.php
(2.35 KB)
📄
Util_WpFile_FilesystemOperationException.php
(1.29 KB)
📄
Util_WpFile_FilesystemRmException.php
(1.14 KB)
📄
Util_WpFile_FilesystemRmdirException.php
(1.19 KB)
📄
Util_WpFile_FilesystemWriteException.php
(1.57 KB)
📄
Util_WpmuBlogmap.php
(8.06 KB)
📄
Varnish_Flush.php
(18.57 KB)
📄
Varnish_Plugin.php
(3.2 KB)
📁
extension-example
📁
inc
📄
index.html
(0 B)
📁
ini
📁
languages
📁
lib
📄
press.txt
(45.78 KB)
📁
pub
📄
readme.txt
(76.49 KB)
📁
vendor
📄
w3-total-cache-api.php
(22.29 KB)
📄
w3-total-cache-old-php.php
(1.25 KB)
📄
w3-total-cache.php
(2.83 KB)
📁
wp-content
Editing: Extension_NewRelic_Service.php
<?php /** * File: Extension_NewRelic_Service.php * * @package W3TC */ namespace W3TC; /** * Class Extension_NewRelic_Service * * Wrapper for NewRelicAPI. * deprecated * * @see NewRelicAPI * * phpcs:disable PSR2.Classes.PropertyDeclaration.Underscore * phpcs:disable PSR2.Methods.MethodDeclaration.Underscore * phpcs:disable WordPress.PHP.NoSilencedErrors.Discouraged */ class Extension_NewRelic_Service { /** * API key * * @var string */ private $_api_key; /** * Cache time * * @var int */ private $_cache_time; /** * Constructor for initializing the New Relic service. * * @param string $api_key Optional API key to override the default configuration. * * @return void */ public function __construct( $api_key = '' ) { $config = Dispatcher::config(); if ( $api_key ) { $this->_api_key = $api_key; } else { $this->_api_key = $config->get_string( array( 'newrelic', 'api_key' ) ); } $this->_cache_time = $config->get_integer( array( 'newrelic', 'cache_time' ), 5 ); if ( $this->_cache_time < 1 ) { $this->_cache_time = 5; } } /** * Verifies compatibility with the New Relic PHP agent. * * The verifications is based on https://newrelic.com/docs/php/new-relic-for-php * * @return array Associative array of verification results with status messages. */ public function verify_compatibility() { $php_versions = array( '5.2.x', '5.3.x', '5.4.x' ); $verified = array(); $version = explode( '.', PHP_VERSION ); $php_version = sprintf( '%s.%s.%s', $version[0], $version[1], $version[2] ); $php_version_ok = version_compare( $php_version, '5.2', '>' ); $supported_string = __( 'Supported', 'w3-total-cache' ); $verified[ __( 'PHP version', 'w3-total-cache' ) ] = ( $php_version_ok ? $supported_string : sprintf( // Translators: 1 PHP version. __( 'Not supported: %1$s.', 'w3-total-cache' ), $php_version ) ); $os_name = php_uname( 's' ); switch ( $os_name ) { case 'Linux': /** * Any other version of Linux with kernel 2.6.13 or later * (2.6.26 and later highly recommended) and glibc 2.5 or later */ $version = explode( '.', php_uname( 'r' ) ); $os_version = sprintf( '%d.%d.%d', $version[0], $version[1], $version[2] ); $os_check = version_compare( $os_version, '2.6.13', '>=' ); break; case 'FreeBSD': /** * You must enable the linkthr build option so that the New Relic agent will not cause your PHP to hang. */ $version = explode( '.', php_uname( 'r' ) ); $os_version = sprintf( '%d.%d', $version[0], $version[1] ); $os_check = version_compare( $os_version, '7.3', '>=' ); break; case 'MacOS/X': /** * MacOS/X configurations do not use the standard /etc/init.d/newrelic-daemon script. * Instead, they use /usr/bin/newrelic-daemon-service in the same way; for example: * /usr/bin/newrelic-daemon-service restart. */ $version = explode( '.', php_uname( 'r' ) ); $os_version = sprintf( '%d.%d', $version[0], $version[1] ); $os_check = version_compare( $os_version, '10.5', '>=' ); break; case 'Open Solaris': /** * Must be snv_134b or later */ $version = explode( '.', php_uname( 'r' ) ); $os_version = sprintf( '%d', $version[0] ); $os_check = version_compare( $os_version, '10', '==' ); break; default: $os_check = false; $os_name = php_uname(); $os_version = ''; } $verified[ __( 'Operating System', 'w3-total-cache' ) ] = ( $os_check ) ? $supported_string : sprintf( // translators: 1 OS name, 2 OS version, 3 opening HTML a tag to NewRelic for PHP requirments, 4 closing HTML a tag. __( 'Not Supported. (%1$s %2$s See %3$sNewRelic Requirements%4$s page.)', 'w3-total-cache' ), $os_name, $os_version, '<a href="https://docs.newrelic.com/docs/apm/agents/php-agent/getting-started/php-agent-compatibility-requirements/" target="_blank">', '</a>' ); /** * Apache 2.2 or 2.4 via mod_php * Or any web server that supports FastCGI using php-fpm */ $server_software = isset( $_SERVER['SERVER_SOFTWARE'] ) ? sanitize_text_field( wp_unslash( $_SERVER['SERVER_SOFTWARE'] ) ) : ''; $server = explode( '/', $server_software ); $ws_check = false; $ws_name = $server_software; $ws_version = ''; if ( count( $server ) > 1 ) { $ws_name = $server[0]; $ws_version = $server[1]; $version = explode( '.', $ws_version ); if ( count( $version ) > 1 ) { $ws_version = sprintf( '%d.%d', $version[0], $version[1] ); } } switch ( true ) { case Util_Environment::is_apache(): if ( $ws_version ) { $ws_check = version_compare( $ws_version, '2.2', '>=' ); } break; case Util_Environment::is_nginx(): $ws_check = 'fpm-fcgi' === php_sapi_name(); $ws_name .= php_sapi_name(); break; default: $ws_check = 'fpm-fcgi' === php_sapi_name(); $ws_name = $server_software; $ws_version = ''; } $verified[ __( 'Web Server', 'w3-total-cache' ) ] = $ws_check ? $supported_string : sprintf( // translators: 1 Web Server name, 2 Web Server version, 3 opening HTML a tag to NewRelic requirments for php, 4 closing HTML a tag. __( 'Not Supported. (%1$s %2$s See %3$sNewRelic Requirements%4$s page.)', 'w3-total-cache' ), $ws_name, $ws_version, '<a href="https://docs.newrelic.com/docs/apm/agents/php-agent/getting-started/php-agent-compatibility-requirements/" target="_blank">', '</a>' ); return $verified; } /** * Verifies if the New Relic service is running properly. * * @return mixed An array of error messages or true if everything is configured correctly. * * @throws \Exception If an error occurs while verifying the configuration. */ public function verify_running() { $config = Dispatcher::config(); $error = array(); if ( ! $this->get_api_key() ) { $error['api_key'] = __( 'API Key is not configured.', 'w3-total-cache' ); } if ( 'browser' === $config->get( array( 'newrelic', 'monitoring_type' ) ) ) { $name = $this->get_effective_appname(); if ( empty( $name ) ) { $error['application_id'] = __( 'Application ID is not configured. Enter/Select application name.', 'w3-total-cache' ); } } else { if ( ! $this->module_is_enabled() ) { $error['module_enabled'] = __( 'PHP module is not enabled.', 'w3-total-cache' ); } if ( ! $this->agent_enabled() ) { $error['agent_enabled'] = __( 'PHP agent is not enabled.', 'w3-total-cache' ); } if ( ! $this->get_account_id() ) { $error['account_id'] = __( 'Account ID is not configured.', 'w3-total-cache' ); } if ( 0 === $this->get_effective_application_id() ) { $error['application_id'] = __( 'Application ID is not configured. Enter/Select application name.', 'w3-total-cache' ); } try { if ( ! $this->get_license_key_from_ini() ) { $error['license'] = __( 'License key could not be detected in ini file.', 'w3-total-cache' ); } $licences = explode( ' ', trim( $this->get_license_key_from_ini() ) ); $licences = array_map( 'trim', $licences ); if ( $this->get_license_key_from_ini() && $this->get_license_key_from_account() && ! in_array( trim( $this->get_license_key_from_account() ), $licences, true ) ) { $error['license'] = sprintf( // Translators: 1 license key, 2 license key list. __( 'Configured license key does not match license key(s) in account: <br />%1$s <br />%2$s', 'w3-total-cache' ), $this->get_license_key_from_ini(), implode( '<br />', $licences ) ); } $this->get_account_id(); } catch ( \Exception $ex ) { $error['api_key'] = __( 'API Key is invalid.', 'w3-total-cache' ); } } return $error ? $error : true; } /** * Checks if the New Relic PHP agent is enabled. * * @return bool True if the agent is enabled, false otherwise. */ public function agent_enabled() { return ini_get( 'newrelic.enabled' ); } /** * Checks if the New Relic module is enabled in PHP. * * @return bool True if the module is enabled, false otherwise. */ public function module_is_enabled() { return function_exists( 'newrelic_set_appname' ); } /** * Retrieves the New Relic license key from the PHP configuration. * * @return string The New Relic license key. */ public function get_license_key_from_ini() { return ini_get( 'newrelic.license' ); } /** * Retrieves the API key used for authentication with the New Relic service. * * @return string The API key. */ public function get_api_key() { return $this->_api_key; } /** * Retrieves the New Relic API instance. * * phpcs:disable WordPress.NamingConventions.ValidFunctionName.MethodNameInvalid * * @return \NewRelicAPI The API instance for interacting with New Relic. */ private function getAPI() { static $api = null; if ( ! $api ) { require_once W3TC_LIB_NEWRELIC_DIR . '/NewRelicAPI.php'; $api = new \NewRelicAPI( $this->_api_key ); } return $api; } /** * Retrieves a list of applications associated with the New Relic account. * * @return array An array of applications. */ public function get_applications() { if ( empty( $this->_api_key ) ) { return array(); } return $this->getAPI()->get_applications( $this->get_account_id() ); } /** * Retrieves a list of browser applications associated with the New Relic account. * * @return array An array of browser applications. */ public function get_browser_applications() { return $this->getAPI()->get_browser_applications(); } /** * Retrieves a specific application by its ID. * * @param int $application_id The application ID. * * @return array The details of the specified application. */ public function get_application( $application_id ) { $applications = $this->get_applications(); return $applications[ $application_id ]; } /** * Retrieves the summary of a specific application. * * @return array The application summary. */ public function get_application_summary() { return $this->getAPI()->get_application_summary( $this->get_account_id(), $this->get_effective_application_id() ); } /** * Retrieves the account information associated with the New Relic service. * * @return array The account details. */ public function get_account() { static $account = null; if ( ! $account ) { $account = $this->getAPI()->get_account(); } return $account; } /** * Retrieves the subscription details of the New Relic account. * * @return mixed The subscription details or null if not available. */ public function get_subscription() { $account = $this->get_account(); if ( $account ) { return $account['subscription']; } return null; } /** * Determines whether the current subscription allows metric retrieval. * * @return bool True if the subscription is not 'Lite', false otherwise. */ public function can_get_metrics() { $subscription = $this->get_subscription(); return 'Lite' !== $subscription['product-name']; } /** * Retrieves the license key associated with the current account. * * @return string|null The license key, or null if not found. */ public function get_license_key_from_account() { $account = $this->get_account(); if ( $account ) { return $account['license-key']; } return null; } /** * Fetches the application settings for the current account and application. * * @return array The application settings. */ public function get_application_settings() { $settings = $this->getAPI()->get_application_settings( $this->get_account_id(), $this->get_effective_application_id() ); return $settings; } /** * Updates the application settings for the current account and application. * * @param array $application The application settings to update. * * @return bool True on success, false on failure. */ public function update_application_settings( $application ) { $result = $this->getAPI()->update_application_settings( $this->get_account_id(), $this->get_effective_application_id(), $application ); return $result; } /** * Retrieves metric names based on an optional regular expression filter and limit. * * @param string $regex Optional regular expression to filter metric names. * @param string $limit Optional limit for the number of metrics to retrieve. * * @return array An associative array of metric names and their corresponding metric objects. */ public function get_metric_names( $regex = '', $limit = '' ) { $metric_names_object = $this->getAPI()->get_metric_names( $this->get_effective_application_id(), $regex, $limit ); if ( ! $metric_names_object ) { return array(); } $metric_names = array(); foreach ( $metric_names_object as $metric ) { $metric_names[ $metric->name ] = $metric; } return $metric_names; } /** * Retrieves metric data for the given metrics and field over a specified number of days. * * phpcs:disable WordPress.NamingConventions.ValidVariableName.VariableNotSnakeCase * * @param array|string $metrics The metrics to fetch data for. * @param string $field The field of data to retrieve. * @param int $days The number of days of data to retrieve. * @param bool $summary Whether to summarize the data. * @param bool $use_subgroup Whether to group data by subgroups. * * @return array An array of formatted metric data. */ public function get_metric_data( $metrics, $field, $days = 7, $summary = true, $use_subgroup = true ) { if ( ! is_array( $metrics ) ) { $metrics = array( $metrics ); } $begin = new \DateTime( gmdate( 'Y-m-d G:i:s', strtotime( ( $days > 1 ? "-$days days" : "-$days day" ) ) ) ); $beginStr = $begin->format( 'Y-m-d' ) . 'T' . $begin->format( 'H:i:s' ) . 'Z'; $to = new \DateTime( gmdate( 'Y-m-d G:i:s' ) ); $toStr = $to->format( 'Y-m-d' ) . 'T' . $to->format( 'H:i:s' ) . 'Z'; $cache_key = md5( implode( ',', array( $this->get_account_id(), $this->get_effective_application_id(), $beginStr, $toStr, implode( ',', $metrics ), $field, $summary, ) ) ); $metric_data = $this->getAPI()->get_metric_data( $this->get_account_id(), $this->get_effective_application_id(), $beginStr, $toStr, $metrics, $field, $summary ); $formatted_data = array(); if ( $metric_data ) { foreach ( $metric_data as $metric ) { $path = explode( '/', $metric->name ); $group = $path[0]; if ( $use_subgroup ) { $subgroup = isset( $path[1] ) ? ( 'all' === $path[1] ? 0 : $path[1] ) : 0; $formatted_data[ $group ][ $subgroup ][] = $metric; } else { $formatted_data[ $group ][] = $metric; } } } return $formatted_data; } /** * Retrieves a set of dashboard metrics for monitoring. * * @return array An array of formatted dashboard metric data. */ public function get_dashboard_metrics() { $metrics = array( 'Database/all', 'WebTransaction', 'EndUser' ); $field = 'average_response_time'; return $this->get_metric_data( $metrics, $field, 1, true ); } /** * Retrieves the slowest page load times for web transactions. * * @return array An associative array of slowest page loads by transaction name and response time. */ public function get_slowest_page_load() { $metric_names = $this->get_metric_names( 'EndUser/WebTransaction/WebTransaction/' ); $metric_names_keys = array_keys( $metric_names ); $metric_data = $this->get_metric_data( $metric_names_keys, 'average_response_time', 1 ); $slowest = array(); if ( $metric_data ) { $transactions = $metric_data['EndUser']['WebTransaction']; foreach ( $transactions as $transaction ) { $key = str_replace( 'EndUser/WebTransaction/WebTransaction', '', $transaction->name ); $slowest[ $key ] = $transaction->average_response_time; } $slowest = $this->_sort_and_slice( $slowest, 5 ); } return $slowest; } /** * Retrieves the slowest web transactions based on response time. * * @return array An associative array of the slowest web transactions by name and response time. */ public function get_slowest_webtransactions() { $metric_names = $this->get_metric_names( '^WebTransaction/' ); $metric_names_keys = array_keys( $metric_names ); $metric_data = $this->get_metric_data( $metric_names_keys, 'average_response_time', 1 ); $slowest = array(); if ( $metric_data ) { $transactions = $metric_data['WebTransaction']; foreach ( $transactions as $transaction ) { foreach ( $transaction as $tr_sub ) { $key = str_replace( 'WebTransaction', '', $tr_sub->name ); $slowest[ $key ] = $tr_sub->average_response_time; } } $slowest = $this->_sort_and_slice( $slowest, 5 ); } return $slowest; } /** * Retrieves the slowest database transactions based on response time. * * @return array An associative array of the slowest database transactions by name and response time. */ public function get_slowest_database() { $metric_names = $this->get_metric_names( '^Database/' ); $metric_names_keys = array_keys( $metric_names ); $metric_names_keys = array_slice( $metric_names_keys, 7 ); $metric_data = $this->get_metric_data( $metric_names_keys, 'average_response_time', 1, true, false ); $slowest = array(); if ( $metric_data ) { $transactions = $metric_data['Database']; foreach ( $transactions as $transaction ) { $key = str_replace( 'Database', '', $transaction->name ); $slowest[ $key ] = $transaction->average_response_time; } $slowest = $this->_sort_and_slice( $slowest, 5 ); } return $slowest; } /** * Retrieves the frontend response time metric. * * @return float The average frontend response time. */ public function get_frontend_response_time() { $metric_data = $this->get_metric_data( 'EndUser', 'average_fe_response_time', 1, true, false ); return isset( $metric_data['EndUser'] ) ? $metric_data['EndUser'][0]->average_fe_response_time : 0; } /** * Sorts and slices the given slowest data to a specified size. * * @param array $slowest The array of slowest data to sort. * @param int $size The number of top slowest items to return. * * @return array The top slowest data, sorted and sliced. */ private function _sort_and_slice( $slowest, $size ) { arsort( $slowest, SORT_NUMERIC ); if ( count( $slowest ) > $size ) { $slowest = array_slice( $slowest, 0, $size ); } return $slowest; } /** * Retrieves the name of an application based on its ID. * * @param int $application_id The ID of the application. * * @return string The application name, or an empty string if not found. */ public function get_application_name( $application_id ) { $apps = $this->get_applications( $this->get_account_id() ); return isset( $apps[ $application_id ] ) ? $apps[ $application_id ] : ''; } /** * Retrieves the account ID associated with the current API key. * * @return int The account ID, or 0 if not found or invalid. */ public function get_account_id() { if ( empty( $this->_api_key ) ) { return 0; } $ids_string = get_option( 'w3tc_nr_account_id' ); $ids = @json_decode( $ids_string, true ); if ( ! is_array( $ids ) ) { $ids = array(); } if ( isset( $ids[ $this->_api_key ] ) ) { return $ids[ $this->_api_key ]; } $ids[ $this->_api_key ] = 0; try { $account = $this->getAPI()->get_account(); if ( $account ) { $ids[ $this->_api_key ] = (int) $account['id']; } } catch ( \Exception $ex ) { return 0; } update_option( 'w3tc_nr_account_id', wp_json_encode( $ids ) ); return $ids[ $this->_api_key ]; } /** * Retrieves the application ID based on the application name. * * @param string $appname The application name. * * @return int The application ID, or 0 if not found. */ public function get_application_id( $appname ) { if ( empty( $appname ) ) { return 0; } $apps = $this->get_applications(); foreach ( $apps as $id => $name ) { if ( $name === $appname ) { return $id; } } return 0; } /** * Retrieves the effective application ID based on the current configuration and API key. * * @return int The effective application ID, or 0 if an error occurs. */ public function get_effective_application_id() { $config = Dispatcher::config(); $monitoring_type = $config->get_string( array( 'newrelic', 'monitoring_type' ) ); if ( 'browser' === $monitoring_type ) { return $config->get_string( array( 'newrelic', 'browser.application_id' ) ); } $appname = $this->get_effective_appname(); $ids_string = get_option( 'w3tc_nr_application_id' ); $ids = @json_decode( $ids_string, true ); if ( ! is_array( $ids ) ) { $ids = array(); } $key = md5( $this->_api_key . $appname ); if ( isset( $ids[ $key ] ) ) { return $ids[ $key ]; } try { $ids[ $key ] = $this->get_application_id( $appname ); } catch ( \Exception $ex ) { return 0; } update_option( 'w3tc_nr_application_id', wp_json_encode( $ids ) ); return $ids[ $key ]; } /** * Retrieves the effective application name based on the current configuration and monitoring type. * * @return string The effective application name. */ public function get_effective_appname() { $config = Dispatcher::config(); $monitoring_type = $config->get_string( array( 'newrelic', 'monitoring_type' ) ); if ( 'browser' === $monitoring_type ) { $core = Dispatcher::component( 'Extension_NewRelic_Core' ); $a = $core->get_effective_browser_application(); if ( isset( $a['name'] ) ) { return $a['name']; } return '?'; } return $config->get_string( array( 'newrelic', 'apm.application_name' ) ); } }
Upload File
Create Folder