Плагин w3 total cache wordpress. W3 Total Cache настройка плагина кеширования

W3 Total Cache improves the SEO and user experience of your site by increasing website performance, reducing load times via features like content delivery network (CDN) integration and the latest best practices.

The only web host agnostic Web Performance Optimization (WPO) framework for WordPress trusted by millions of publishers, web developers, and web hosts worldwide for more than a decade.

ПРЕИМУЩЕСТВА

  • Improvements in search engine result page rankings, especially for mobile-friendly websites and sites that use SSL
  • At least 10x improvement in overall site performance (Grade A in WebPagetest or significant Google Page Speed improvements) when fully configured
  • Improved conversion rates and «site performance » which affect your site’s rank on Google.com
  • «Instant» repeat page views: browser caching
  • Optimized progressive render: pages start rendering quickly and can be interacted with more quickly
  • Reduced page load time: increased visitor time on site; visitors view more pages
  • Improved web server performance; sustain high traffic periods
  • Up to 80% bandwidth savings via minify and HTTP compression of HTML, CSS, JavaScript and feeds

ОСНОВНЫЕ ВОЗМОЖНОСТИ

  • Compatible with shared hosting, virtual private / dedicated servers and dedicated servers / clusters
  • Transparent content delivery network (CDN) management with Media Library, theme files and WordPress itself
  • Mobile support: respective caching of pages by referrer or groups of user agents including theme switching for groups of referrers or user agents
  • Accelerated Mobile Pages (AMP) support
  • Secure Socket Layer (SSL) support
  • Caching of (minified and compressed) pages and posts in memory or on disk or on (FSD) CDN (by user agent group)
  • Caching of (minified and compressed) CSS and JavaScript in memory, on disk or on CDN
  • Caching of feeds (site, categories, tags, comments, search results) in memory or on disk or on CDN
  • Caching of search results pages (i.e. URIs with query string variables) in memory or on disk
  • Caching of database objects in memory or on disk
  • Caching of objects in memory or on disk
  • Caching of fragments in memory or on disk
  • Minification of posts and pages and feeds
  • Minification of inline, embedded or 3rd party JavaScript (with automated updates)
  • Minification of inline, embedded or 3rd party CSS (with automated updates)
  • Browser caching using cache-control, future expire headers and entity tags (ETag) with «cache-busting»
  • JavaScript grouping by template (home page, post page etc) with embed location control
  • Non-blocking JavaScript embedding
  • Import post attachments directly into the Media Library (and CDN)
  • WP-CLI support for cache purging, query string updating and more
  • Various security features
  • Caching statistics for performance insights
  • Extension framework for customization or extensibility e.g. New Relic, Cloudflare, WPML and more
  • Reverse proxy integration via Nginx or Varnish

Improve the user experience for your readers without having to change WordPress, your theme, your plugins or how you produce your content.

What users have to say:

Who do I thank for all of this?

It’s quite difficult to recall all of the innovators that have shared their thoughts, code and experiences in the blogosphere over the years, but here are some names to get you started:

  • George Schlossnagle
  • Daniel Cowgill

Please reach out to all of these people and support their projects if you’re so inclined.

Установка

  1. Deactivate and uninstall any other caching plugin you may be using. Pay special attention if you have customized the rewrite rules for fancy permalinks, have previously installed a caching plugin or have any browser caching rules as W3TC will automate management of all best practices. Also make sure wp-content/ and wp-content/uploads/ (temporarily) have 777 permissions before proceeding, e.g. in the terminal: # chmod 777 /var/www/vhosts/domain.com/httpdocs/wp-content/ using your web hosting control panel or your FTP / SSH account.
  2. Login as an administrator to your WordPress Admin account. Using the «Add New» menu option under the «Plugins» section of the navigation, you can either search for: w3 total cache or if you’ve downloaded the plugin already, click the «Upload» link, find the .zip file you download and then click «Install Now». Or you can unzip and FTP upload the plugin to your plugins directory (wp-content/plugins/). In either case, when done wp-content/plugins/w3-total-cache/ should exist.
  3. Locate and activate the plugin on the «Plugins» page. Page caching will automatically be running in basic mode. Set the permissions of wp-content and wp-content/uploads back to 755, e.g. in the terminal: # chmod 755 /var/www/vhosts/domain.com/httpdocs/wp-content/ .
  4. Now click the «Settings» link to proceed to the «General Settings» tab; in most cases, «disk enhanced» mode for page cache is a «good» starting point.
  5. The «Compatibility mode» option found in the advanced section of the «Page Cache Settings» tab will enable functionality that optimizes the interoperablity of caching with WordPress, is disabled by default, but highly recommended. Years of testing in hundreds of thousands of installations have helped us learn how to make caching behave well with WordPress. The tradeoff is that disk enhanced page cache performance under load tests will be decreased by ~20% at scale.
  6. Recommended: On the «Minify Settings» tab, all of the recommended settings are preset. If auto mode causes issues with your web site’s layout, switch to manual mode and use the help button to simplify discovery of your CSS and JS files and groups. Pay close attention to the method and location of your JS group embeddings. See the plugin’s FAQ for more information on usage.
  7. Recommended: On the «Browser Cache» tab, HTTP compression is enabled by default. Make sure to enable other options to suit your goals.
  8. Recommended: If you already have a content delivery network (CDN) provider, proceed to the «Content Delivery Network» tab and populate the fields and set your preferences. If you do not use the Media Library, you will need to import your images etc into the default locations. Use the Media Library Import Tool on the «Content Delivery Network» tab to perform this task. If you do not have a CDN provider, you can still improve your site’s performance using the «Self-hosted» method. On your own server, create a subdomain and matching DNS Zone record; e.g. static.domain.com and configure FTP options on the «Content Delivery Network» tab accordingly. Be sure to FTP upload the appropriate files, using the available upload buttons.
  9. Optional: On the «Database Cache» tab, the recommended settings are preset. If using a shared hosting account use the «disk» method with caution, the response time of the disk may not be fast enough, so this option is disabled by default. Try object caching instead for shared hosting.
  10. Optional: On the «Object Cache» tab, all of the recommended settings are preset. If using a shared hosting account use the «disk» method with caution, the response time of the disk may not be fast enough, so this option is disabled by default. Test this option with and without database cache to ensure that it provides a performance increase.
  11. Optional: On the «User Agent Groups» tab, specify any user agents, like mobile phones if a mobile theme is used.

Часто задаваемые вопросы

Why does speed matter?

Search engines like Google, measure and factor in the speed of web sites in their ranking algorithm. When they recommend a site they want to make sure users find what they’re looking for quickly. So in effect you and Google should have the same objective.

Speed is among the most significant success factors web sites face. In fact, your site’s speed directly affects your income (revenue) — it’s a fact. Some high traffic sites conducted research and uncovered the following:

  • Google.com: +500 ms (speed decrease) -> -20% traffic loss
  • Yahoo.com: +400 ms (speed decrease) -> -5-9% full-page traffic loss (visitor left before the page finished loading)
  • Amazon.com: +100 ms (speed decrease) -> -1% sales loss

A thousandth of a second is not a long time, yet the impact is quite significant. Even if you’re not a large company (or just hope to become one), a loss is still a loss. However, there is a solution to this problem, take advantage.

Many of the other consequences of poor performance were discovered more than a decade ago:

  • Lower perceived credibility (Fogg et al. 2001)
  • Lower perceived quality (Bouch, Kuchinsky, and Bhatti 2000)
  • Increased user frustration (Ceaparu et al. 2004)
  • Increased blood pressure (Scheirer et al. 2002)
  • Reduced flow rates (Novak, Hoffman, and Yung 200)
  • Reduced conversion rates (Akamai 2007)
  • Increased exit rates (Nielsen 2000)
  • Are perceived as less interesting (Ramsay, Barbesi, and Preece 1998)
  • Are perceived as less attractive (Skadberg and Kimmel 2004)
Is this plugin server cluster and load balancer friendly?

Yes, built from the ground up with scale and current hosting paradigms in mind.

What is the purpose of the «Media Library Import» tool and how do I use it?

The media library import tool is for old or «messy» WordPress installations that have attachments (images etc in posts or pages) scattered about the web server or «hot linked» to 3rd party sites instead of properly using the media library.

The tool will scan your posts and pages for the cases above and copy them to your media library, update your posts to use the link addresses and produce a .htaccess file containing the list of of permanent redirects, so search engines can find the files in their new location.

You should backup your database before performing this operation.

How do I find the JS and CSS to optimize (minify) them with this plugin?

Use the «Help» button available on the Minify settings tab. Once open, the tool will look for and populate the CSS and JS files used in each template of the site for the active theme. To then add a file to the minify settings, click the checkbox next to that file. The embed location of JS files can also be specified to improve page render performance. Minify settings for all installed themes can be managed from the tool as well by selecting the theme from the drop down menu. Once done configuring minify settings, click the apply and close button, then save settings in the Minify settings tab.

I don’t understand what a CDN has to do with caching, that’s completely different, no?

Technically no, a CDN is a high performance cache that stores static assets (your theme files, media library etc) in various locations throughout the world in order to provide low latency access to them by readers in those regions.

How do I use an Origin Pull (Mirror) CDN?

Login to your CDN providers control panel or account management area. Following any set up steps they provide, create a new «pull zone» or «bucket» for your site’s domain name. If there’s a set up wizard or any troubleshooting tips your provider offers, be sure to review them. In the CDN tab of the plugin, enter the hostname your CDN provider provided in the «replace site’s hostname with» field. You should always do a quick check by opening a test file from the CDN hostname, e.g. http://cdn.domain.com/favicon.ico. Troubleshoot with your CDN provider until this test is successful.

Now go to the General tab and click the checkbox and save the settings to enable CDN functionality and empty the cache for the changes to take effect.

How do I configure Amazon Simple Storage Service (Amazon S3) or Amazon CloudFront as my CDN?

Участники и разработчики

«W3 Total Cache» - проект с открытым исходным кодом. В развитие плагина внесли свой вклад следующие участники:

Участники

Журнал изменений

0.9.7.2

  • Fixed fatal error during media file upload with CDN module active
  • Fixed removal of empty values, JSON encoded string in attribute, trailing quote at end of tag, and the handling of anchors in HTML minify
  • Fixed undefined index warning
  • Fixed fatal error when purging CDN using full site delivery

0.9.7.1

  • Fixed undefined variable notice
  • Fixed «No such file or directory» warning
  • Fixed writing to PHP error log rather than WordPress debug log
  • Fixed default referrer policy should be «no-referrer-when-downgrade»
  • Fixed php_flag error related to browser cache, using ini_set instead
  • Fixed CloudFlare IPv6 check undefined offset
  • Fixed Undefined constant WP_ROOT
  • Fixed frame-ancestors being overwritten by frame-src
  • Fixed missing semicolon in nginx configuration
  • Fixed HTTP/2 URLs handling for browser cache and CDN modules
  • Fixed display of CDN debug information
  • Fixed CSS Minification with Google Fonts when included via «Include external files/libraries» and non-latin character-sets are loaded
  • Fixed media query string not updating when all caches were purged
  • Fixed double slash with ABSPATH if file exists
  • Fixed setting max-age and expires header simultaneously
  • Fixed SASL detection for PECL Memcached
  • Fixed handling of manually entered objects to be purged on CDN
  • Fixed query string handling in Nginx
  • Improved error handling with Cloudfront
  • Improved page cache logging
  • Improved multi-tenant support for memory-based caching engines
  • Improved CSS minification
  • Improved purge behavior for changed media objects when using CDN
  • Improved compatibility with sitemap plugins
  • Added support for Memcached for Nginx
  • Added support for caching webm files
  • Added Brotli HTTP compression support
  • Added StackPath full site delivery support
  • Added wc_session to the list of ignored query stems for improved WooCommerce compatibility

0.9.7

  • Fixed minified files not being hosted by CDN when enabled if «host minified files» is disabled
  • Fixed warning thrown when purge all was selected (via nigrosimone)
  • Fixed undefined offset error in fragment cache
  • Fixed MaxCDN test button failure when debug mode is enabled
  • Fixed purging of feeds when cache feeds option is enabeld
  • Improved handling of errors when full site delivery isn’t set
  • Improved nginx.conf to support xml caching
  • Improved nginx.conf to support HSTS for static files
  • Improved minify’s handling of query strings
  • Improved database caching, frequent wp_options no longer flush posts or comments data
  • Improved Limelight Networks CDN integration
  • Improved FAQ, they’re now hosted in the GitHub public repository
  • Improved handling for /
  • Added flushing of AMP pages

0.9.5.2

  • Fixed security issue by protecting configuration data by adding .php to relevant files
  • Fixed security issue with the creation of dot folders that could be abused
  • Fixed handling HTTP compression for uncached pages
  • Fixed handling of .svgz files
  • Added expiration headers to webP images
  • Added support for Microsoft Azure’s latest API
  • Added ability to cache WP Admin. Recommended setting, is off. (Improved WP Admin performance with object caching enabled)
  • Added HTTP/2 Push support for minified files
  • Added option management support for wp-cli
  • Improved handling of uncompressed minified files
  • Improved handling of purging of modified pages / posts
  • Improved compatibility with Rackspace Cloud Files
  • Improved initial CDN configuration reliability
  • Improved reliability of object caching
  • Improved PHP 7.0 compatibility
  • Improved PHP 4.3 compatibility
  • Improved HTTP/2 support
  • Improved CSS embed handling
  • Improved reliability of object cache, transients now fallback to database
  • Improved handling of cached http compressed objects

0.9.5.1

  • Fixed missing namespace, which caused issues with other implementations of Google APIs
  • Fixed handling Cloudflare zone list being incomplete for users with many zones
  • Added extension to support Accelerated Mobile Pages (AMP)
  • Added notification for users that are still using PHP 5.2 (end of life in 2011)
  • Improved default settings
  • Improved compatibility with Yoast SEO sitemap caching
  • Improved compatability with Jetpack
  • Improved directory handling on IIS
  • Improved backwards compatibility for 3rd party implementations against legacy W3TC functions

0.9.5

  • Fixed XSS vulnerability
  • Fixed issues with dismissing overlays
  • Fixed handling of tilde in URLs
  • Fixed issue with HTTP compression header when using mfunc calls
  • Fixed cache ID issue with minify in network mode
  • Fixed rare issue of caching empty document when some PHP errors occur in themes or plugins
  • Fixed caching of query strings
  • Added support for APCu Opcode Cache
  • Added support for Redis
  • Added support for Google Drive
  • Added support for Amazon S3-compatible stroage services
  • Added support for PECL memcached
  • Added support for srcset elements
  • Added support for Rackspace CDN Origin Pull
  • Added support for minification of external fonts
  • Added support for WOFF2 font format
  • Added support for FTPS (FTP-SSL, S-FTP)
  • Added YUI Compressor’s PHP Port of the CSS minifier
  • Added Narcissus’ JS minifier
  • Added purge of parent page when attachments are added or updated
  • Added Highwinds CDN provider
  • Added «Validate Timestamps» option for compatible opcode caches functions like apc.stat are enabled
  • Added Full Site Delivery for Pro subscribers
  • Added HTTP Strict Transport Security (HSTS) support
  • Added a sample extension for developers to reference
  • Added Rackspace Cloud Files Multi-Region Support
  • Added more support for exclusions to database cache
  • Added more optionality to minifiers
  • Added WPML Performance Extension
  • Added use of namespace which creates mininum dependency on version PHP 5.3
  • Improved PHP 5.6 compatibility
  • Improved PHP 7 compatibility
  • Improved performance menu in admin bar, including purging of specific cache engines and more
  • Improved SSL interoperability
  • Improved reliablity of test buttons
  • Improved nomenclature of caching files for higher cache hit rates
  • Improved nginx compatibility
  • Improved WP CLI support
  • Improved Cloudflare compatibility (now using latest APIs), Cloudflare must be re-authorized
  • Improved AWS API compatibility (now using latest APIs)
  • Improved Rackspace Cloud Files compatibility (now using latest APIs)
  • Improved page cache purge for extensions like cloudflare and other reverse proxy use cases
  • Improved extension framework functionality
  • Improved compatibility of headers like ETag and content encoding
  • Improved template fragment caching
  • Improved notifications, warnings and errors
  • Improved moble user agents detection
  • Improved security with nonces and form elements
  • Improved security throughout the codebase
  • Improved detail of debug messages
  • Improved Amazon SNS security (validation)
  • Improved minify’s ability to match script tags without type attribute

0.9.4

  • Fixed undefined w3tc_button_link
  • Fixed support and other form submissions
  • Fixed extension enabled key error
  • Fixed Test CDN errors
  • Fixed trailing slashes in custom wp content path and Minify
  • Fixed WP_PLUGIN_DIR not being available when object-cache.php is loaded and W3TC constant not set
  • Fixed Minify Auto and restructuring of JS code placement on page
  • Fixed remove / replace drop in file on plugins page
  • Fixed false positive check for legacy code
  • Fixed deprecated wpdb escape
  • Fixed Fragment Caching and APC anomalies
  • Fixed cached configs causing 500 error on interrupted file writes
  • Fixed readfile errors on servers with the functionality disabled
  • Fixed false positives for license key verification
  • Fixed debug information not printed on cached pages
  • Fixed backwards compatibility and flushing and added doing it wrong notification
  • Fixed «Prevent caching of objects after settings change»
  • Fixed «Use late init» being shown as enabled with Disc:Enhanced
  • Fixed missing param in APC cache method declaration
  • Fixed user roles property not begin an array
  • Fixed adding empty Vary header
  • Fixed notice on failed upgrade licencing check
  • Fixed Database Cache description text
  • Fixed duplicate bb10 agents
  • Fixed settings link in Minify Auto notification
  • Fixed notice with undefined constant
  • Fixed nginx configuration and Referrer, User Groups setting
  • Fixed Genesis settings and Suhosin field name limit error
  • Fixed Genesis and Fragment Caching (caching categories etc)
  • Fixed CDN being enabled when creating NetDNA / MaxCDN pull zone
  • Fixed NewRelic related notice in compatibility popup
  • Fixed trailing slash issue in filename to url conversion
  • Fixed issue with wp in subdirectory and relative minimal manual urls
  • Fixed issue with widget styling
  • Fixed issue with Purge All button action
  • Fixed issue with exporting of settings
  • Fixed issue with plugin interferring with preview theme
  • Fixed issue with malformed config files
  • Added caching of list of posts pages (tags, categories etc) to Genesis extension a long with flush it checkbox
  • Added typecasting on expiration time in object cache drop-in
  • Added capability check for save options
  • Added FeedBurner extension
  • Added woff support to Browser Cache
  • Added new CloudFlare IPs
  • Added support for WordPress defined charset and collate in CDN queue table creation
  • Added WordPress SEO by Yoast extension
  • Added *.less to CDN theme uploads and MIME
  • Added default settings for MaxCDN Pull Zone creation
  • Added call to change MaxCDN canonical header setting to match plugin setting
  • Added one button default pull zone creation to MaxCDN without refresh
  • Added MaxCDN authorization validation
  • Added whitelist IPs notification for MaxCDN
  • Added support for use of existing zones without refresh
  • Added new mime types
  • Added support for separate domains for frontend and admin backend
  • Added CloudFlare as an extension
  • Added nofollow to blogroll links
  • Added DEV mode support to PRO version
  • Added EDGE MODE functionality
  • Improved wrapper functions in plugins.php for plugin / theme authors
  • Improved reliability of NetDNA / MaxCDN API calls by using WP HTTP and not cURL
  • Improved Fragment Caching debug information
  • Improved preview mode, removed query string requirement
  • Improved FAQ structure
  • Improved empty minify/pgcache cache notification when using CDN
  • Improved default settings for MaxCDN zone creation
  • Improved CDN queue performance
  • Improved blogmap url sanitation
  • Improved MaxCDN automatic zone creation process
  • Improved license key saving and Pro mode activation on Pro license purchases
  • Updated EDGE MODE: Full site mirroring support for MaxCDN
  • Updated translations

W3 Total Cache – это эффективный, надежный и очень функциональный плагин кэширования для WordPress, который позволяет значительно улучшить быстродействие сайта, повысить скорость его загрузки и снизить нагрузку на сервер. В данной статье мы рассмотрим примеры оптимальных настроек плагина W3 Total Cache для использования как на виртуальном хостинге, так и на выделенном сервере.

В статье будут рассмотрены только самые важные настройки плагина W3 Total Cache. Если вы не нашли каких-то настроек, значит их значения по умолчанию оптимальны или они отвечают за настройку платных функций плагина, поэтому не были рассмотрены.

Скачать настройки

Для максимального удобства вы можете скачать файлы импорта настроек плагина W3 Total Cache. Импортировать настройки можно в меню Performance > General Settings > Import / Export Settings .

Все что вам нужно, это при необходимости указать путь к карте сайта в формате XML на странице Page Cache в разделе Cache Preload после импорта настроек и очистить кэш. На этом настройка плагина W3 Total Cache будет завершена.

General Settings

На данной странице находятся общие настройки плагина W3 Total Cache. Страница доступна в меню P erformance > General Settings .

General


Performance > General Settings > General
  • Preview mode – отвечает за включение режима предварительного просмотра. Данный режим активирует плагин только для пользователя, который производит его настройку. Функция полезна при работе с проектами, которые уже находятся в сети и имеют определенный трафик.

Page Cache


Performance > General Settings > Page Cache
  • Page Cache – активация кэширования страниц. Позволяет снизить время ответа сервера, увеличить скорость загрузки страниц, а также снизить нагрузку на сервер за счет кэширования страниц сайта.
  • Page Cache Method - метод кэширования страниц сайта. Рекомендуемое значение - Disk: Enhanced (кэш будет храниться на жестком диске). На сегодняшний день практически все сервера оборудованы производительными SSD дисками, поэтому данный вариант является оптимальным. Использование методов, предполагающих хранение кэша страниц в оперативной памяти рекомендуется только в том случае, если вы уверены, что ее объема будет достаточно для хранения кэша.

Minify


Performance > General Settings > Minify
  • Minify – активация минификации файлов. Позволяет увеличить скорость загрузки сайта за счет сжатия CSS, JavaScript и HTML файлов и удаления из них ненужного кода, например, комментариев.
  • Minify mode - режим минификации. Рекомендуемое значение - Auto . В этом случае плагин W3 Total Cache самостоятельно определяет файлы для минификации и порядок их подключения. Если вы хотите указать файлы вручную - выберите значение Manual (не рекомендуется).
  • Minify Cache Method – метод кэширования. Рекомендуемое значение - Disk . Я всегда рекомендую хранить статические файлы на жестком диске, так как в большинстве случаев это самый оптимальный вариант с точки зрения надежности и производительности.
  • HTML minifier - минификатор HTML кода. Рекомендуемое значение - Minify (default) .
  • JS minifier – минификатор JavaScript кода. Рекомендуемое значение - JSMin (default) .
  • CSS minifier – минификатор CSS кода. Рекомендуемое значение - Minify (default) .

Если после активации минификации возникают проблемы с работой сайта - поэкспериментируйте с разными типами минификаторов.

Opcode Cache


Performance > General Settings > Opcode Cache
  • Opcode Cache – активирует кэширование скомпилированного PHP кода. Рекомендуемое значение - Opcode: Zend Opcache . Обычно функция доступна только на VPS/VDS.
  • Validate timestamps – оставляем флажок для корректного обновления кэша без перезагрузки модуля PHP.

Database Cache


Performance > General Settings > Database Cache
  • Database Cache – активирует кэширование запросов к базе данных. Позволяет сократить время генерации страниц. Рекомендуется использовать как альтернативу объектному кэшу, если последний по какой-либо причине не может быть использован. Кэширование запросов к БД можно использовать как отдельно, так и одновременно с кэшированием объектов.
  • Database Cache Method - метод кэширования запросов к БД. Рекомендуемое значение - Memcached (если установлен) или любой другой вариант, предполагающий хранение кэша в оперативной памяти, а не на жестком диске. Кэширование запросов к БД может создавать огромное количество файлов и папок, которые будут сильно нагружать дисковую подсистему сервера и негативно влиять на его быстродействие.

Object Cache


Performance > General Settings > Object Cache
  • Object Cache – активация кэширования объектов. Позволяет кэшировать данные, повторное получение которых может быть дорогостоящим с точки зрения вычислительных мощностей, например, сложные запросы к базе данных.
  • Object Cache Method - метод кэширования объектов. Как и в случае с кэшем запросов к базе данных, объектный кэш рекомендуется хранить в оперативной памяти.

Browser Cache


Performance > General Settings > Browser Cache
  • Browser Cache – активирует клиентское кэширование. Позволяет ускорить загрузку сайта при повторном обращении за счет кэширования графики, CSS, JavaScript и других элементов сайта в браузере пользователя.

Import / Export Settings


Performance > General Settings > Import / Export Settings
  • Import configuration – импорт настроек с JSON файла.
  • Export configuration - экспорт настроек в JSON файл.
  • Reset configuration - сброс настроек плагина W3 Total Cache до значений, заданных по умолчанию.

Page Cache

На данной странице находятся настройки кэширования страниц. Страница настроек доступна в меню P erformance > General Settings .

General


Performance > Page Cache > General
  • Cache posts page - кэширование страниц записей.
  • Don’t cache front page - отключение кэширования главной страницы (если используется статическая страница).
  • Cache feeds: site, categories, tags, comments - кэширование фидов (рубрик, меток, комментариев и т.д.).
  • Cache SSL (https) requests - кэширование уникальных SSL запросов. Используйте данную опцию, если ваш сайт работает по протоколу https.
  • Cache URIs with query string variables - кэширование страниц с параметрами в URL. Функция очень полезна для интернет-магазинов с фильтрами товаров, а также сайтов, на которых пользователи активно пользуются поиском. К сожалению, в бесплатной версии плагина данная функция недоступна.
  • Cache 404 (not found) pages - кэширование страниц ошибок 404. Используйте эту функцию с осторожностью, так как при выборе метода кэширования Disk: Enhanced сервер будет отдавать неправильные коды ответа (200 вместо 404), что негативно повлияет поисковую оптимизацию сайта.
  • Don’t cache pages for logged in users - отключить кэширование для авторизованных пользователей. Не рекомендуется отключать данную функцию, так как это приведет к кэшированию данных для всех пользователей, в том числе и администратора сайта.
  • Don’t cache pages for following user roles - отключить кэширование для выбранных ролей пользователей. Обязательно выберите роли пользователей, которые отвечают за управление сайтом, такие как «Administrator», «Editor» и т.д.

Cache Preload


Performance > Page Cache > Cache Preload
  • Automatically prime the page cache - активируйте данную функцию для автоматического создания кэша страниц. В противном случае кэш будет создаваться только при посещении страницы.
  • Automatically prime the page cache Update interval - интервал между созданием кэша следующей серии страниц.
  • Pages per interval - количество страниц, кэш которых будет создан через каждый интервал. Устанавливайте значение с учетом мощности сервера. Чем мощнее сервер, тем больше страниц вы можете указать в данном поле.
  • Sitemap URL - ссылка на карту сайта. Страницы будут кэшированы с учетом приоритета в XML карте сайта. Для генерации карты сайта в формате XML используйте плагин Google XML Sitemaps или аналогичный.

Purge Policy: Page Cache

Данный блок отвечает за настройку очистки кэша при создании/редактировании записи и публикации комментариев. С целью повышения производительности, рекомендуется использовать значения, установленные по умолчанию.

Advanced

Данный блок содержит расширенные настройки кэширования страниц. Здесь нас интересует только поле Garbage collection interval , которое отвечает за установку интервала очистки кэша на диске.

Performance > Page Cache > Advanced > Garbage Colletion Interval

Minify

На данной странице находятся настройки минификации HTML, XML, CSS и JavaScript.

General


Performance > Minify > General
  • Rewrite URL structure – активируем данную функцию, чтобы убрать GET параметры из ссылок на сжатые CSS и JavaScript файлы.
  • Disable minify for logged in users - отключает загрузку сжатых страниц для авторизованных пользователей.
  • Minify error notification - отвечает за настройку оповещений об ошибках при создании минифицированного кэша.

HTML & XML


Performance > Minify > HTML & XML

Данный блок отвечает за настройку минификации HTML кода страниц сайта. Сжатие HTML кода обычно не сильно влияет на производительность, но часто может вызывать проблемы с версткой, такие как уменьшение отступов между элементами и прочее. Учитывая это, я не рекомендую использовать данную функцию.

JS


Performance > Minify > JS
  • JS minify settings – активирует минификацию JavaScript файлов.
  • Operations in areas - отвечает за настройку типа загрузки скриптов в разных областях HTML страницы. Поскольку в head страницы обычно загружаются только критически важные скрипты, а все остальное переносится ближе к закрывающему тегу body , то наиболее оптимальными значениями будут Default (blocking) для Before и Non-blocking (using «defer») для After . При желании вы можете поэкспериментировать с разными настройками, но как показала практика, вышеприведенные значения наиболее оптимальны.
  • Minify / Combine only – тип минификации. Согласно правилам хорошего тона, обычно в темах и плагинах подключаются уже сжатые версии CSS и JavaScript файлов, поэтому рекомендую выставить значение Combine only . В этом случае JavaScript файлы будут только объединены (по возможности).

Остальные настройки оставляем отключенными, учитывая ранее выбранный тип кэширования (Disk: Enhanced ).

CSS


Performance > Minify > CSS

Данный блок отвечает за настройку минификации CSS. Здесь особо нечего комментировать, поэтому выставляем настройки, как показано на изображении.

Advanced

В данном блоке содержатся расширенные настройки минификации. Здесь нас интересуют всего два поля:


Performance > Minify > Advanced
  • Update external files every – интервал между загрузкой и обновлением внешних файлов в минифицированном кэше.
  • Garbage collection interval - интервал очистки минифицированного кэша. Для высоконагруженных проектов рекомендуется выставлять меньшее значение.

Остальные настройки оставляем со значениями, заданными по умолчанию.

Browser Cache

На данной странице находятся настройки кэша браузера. Для большинства из них уже заданы оптимальные значения по умолчанию, поэтому вам достаточно лишь сравнить настройки с приведенными ниже примерами и при необходимости подкорректировать их.

General


Performance > Browser Cache > General

CSS & JS


Performance > Browser Cache > CSS & JS

HTML & XML


Performance > Browser Cache > HTML & XML

Media & Other Files


Performance > Browser Cache > Media & Other Files

Security Headers

В данном блоке настроек нас интересует только поле HTTP Strict Transport Security policy , в котором необходимо поставить флажок, если вы используете на сайте SSL.

Performance > Browser Cache > Security Headers > HTTP Strict Transport Security policy

Очистка кэша

Чтобы очистить кэш в плагине W3 Total Cache, используйте верхнее меню Performance в административной панели сайта. Для очистки нужного кэша, достаточно перейти по соответствующей ссылке в меню.


Меню очистки кэша в W3 Total Cache

Также вы можете использовать соответствующие кнопки в настройках плагина W3 Total Cache или уведомлениях, которые появляются, например, после активации/деактивации какого-либо плагина WordPress.

Решение возможных проблем

За все время использования плагина W3 Total Cache я столкнулся лишь с двумя проблемами:

  1. Невозможности активации плагина из-за неправильно заданных прав доступа к файлам.
  2. Избыточной нагрузке на сервер из-за использования карты сайта для автоматического создания кэша.

Если после активации плагина вы видите подобное уведомление, вам необходимо проверить правильность установки прав доступа к файлам и папкам WordPress.

  • 755 или 750 для всех каталогов.
  • 644 или 640 для всех файлов.
  • 440 или 400 для файла wp-config.php .

Если после изменения прав доступа плагин по-прежнему не активируется, установите права 644 для файла wp-config.php , далее активируйте плагин W3 Total Cache, после чего изменить права обратно на 400 или 440 .

Также вы можете вручную отредактировать файл wp-config.php . Для этого откройте его в любом текстовом редакторе, например, NotePad++ и добавьте в самое начало следующий код:

/** Enable W3 Total Cache */ define("WP_CACHE", true); // Added by W3 Total Cache

После этого сохраните файл, обновите его на сервере и повторно активируйте плагин.

Избыточная нагрузка на сервер

Если вы заметили резкий рост нагрузки на сервер после активации плагина W3 Total Cache, который сочетается с частыми обращениями плагина к XML карте сайта (смотрите логи сервера), то причиной является использования предварительного создания кэша страниц с использование карты сайта.


Решить проблему можно изменением приоритета страниц в XML карте сайта, удалением ссылки на карту сайта в настройках предварительного создания кэша (Performance > Page Cache > Cache Preload > Sitemap URL) или полным отключением данной функции.

Заключение

W3 Total Cache – это один из самых функциональных и надежных плагинов кэширования для WordPress, который также является и одним из самых популярных и высоко оцениваемых.

Несмотря на это, из-за сложности настройки и отсутствия качественной информации о плагине на русском языке, многие пользователи до сих пор предпочитают использовать менее эффективные, но более простые решения, такие как WP Super Cache, Hyper Cache или аналогичные.

В данной статье предоставлено достаточное количество информации, чтобы любой желающий, независимо от знаний и опыта, смог настроить кэширование на своем сайте при помощи плагина W3 Total Cache и отказаться от использования пусть и неплохих, но менее эффективных решений.

Нашли ошибку? Выделите ее и нажмите Ctrl + Enter

Версия для печати

В мы ознакомились с важностью использования кэширования для WordPress на примере плагина W3 Total Cache. А сегодня мы приступим к его настройке. Но для начала зайдите в меню Плагины - Добавить новый и установите плагин W3 Total Cache для своего сайта на WordPress.


В админке вашего сайта слева появится новый раздел «Performance ». Нажмите на него, чтоб открыть панель плагина W3TC, из которого вы узнаете детальную информацию о плагине.

  • Premium Services содержит информацию о платной поддержке по всем вопросам от команды.
  • В Spread The Word предоставлена ссылка на разработчиков плагина.
  • New Relic содержит статистический обзор о производительности сайта в соответствии с машиной сервера.
  • Страница Google Page Speed Report становится доступна после настройки плагина W3 Total Cache. В этом разделе будет отображаться информация о производительности сайта и отчет о скорости загрузки страницы.

Общие настройки

Теперь перейдем к настройкам. Нажмите на General Settings (общие настройки) в меню плагина, где вы найдете основные настройки всего плагина. И сейчас мы пошагово рассмотрим каждую из них.

1. Preview Mode (режим просмотра)

Если вы хотите протестировать плагин W3TC до того, как начать использовать его в публичной версии для своего сайта, включите этот режим.

  • Включенный режим просмотра означает, что никто, кроме админа сайта, не может просматривать результаты работы плагина W3TC.
  • Выключенный (по умолчанию) режим просмотра означает, что работу плагина могут видеть абсолютно все. На изображении выше этот режим выключен. Убедитесь, что и вы выбрали нужный режим.

Используйте Preview Mode (режим просмотра) для тестирования настроек прежде, чем вы будете использовать их на сайте. Этот режим остается активным даже после развертывания настроек, пока функция не будет отключена.

2. Page Cache (кэш страницы)

Мы много говорили о кэшировании в предыдущем посте о настройке W3TC. Активировав его, можно сократить время загрузки страницы. Обычно, когда пользователь запрашивает страницу, WordPress использует PHP-скрипты и запросы базы данных, которые требуют затрат ресурсов сервера и, в свою очередь, забирает больше времени для поиска страницы.

Каждый раз, когда пользователь запрашивает любую страницу, происходит то, что описано выше. Поэтому, активирование опции Page Caching обеспечит кэш-копию всех страниц. Для этого проверьте, что в нужном боксе стоит флажок.

Следующая опция - это Page Cache Method (метод кэширования страниц) и по умолчанию Disk: Enhanced . Эта опция зависит от типа сервера, который вы используете. Обычно опция Disk: Enhanced подходит для всех типов.

Pro Features: что это?

Shared Servers

Это виртуальные разделяемые серверы

Первые две опции - Disk: Basic и Dish: Enhanced - используются для виртуального хостинга (когда несколько сайтов разделяют один сервер).

  • Shared Server | Disk: Basic - идеально подходит для недорогого хостинга
  • Shared Server| Disk: Enhanced - рекомендуется для других хостингов

Нужно выбрать Disk: Enhanced . Если ваш сайт начинает работать медленно, а ваш хостинговый провайдер говорит о том, что он использует дополнительные ресурсы, то измените опцию на Disk: Basic или смените хостинг.

Dedicated / Virtual Server

Выделенный / виртуальный сервер.

Если же вы используете мощный выделенный сервер, то W3TC позволяет пользоваться большим количеством параметров. Выделенные серверы не разделяют сервер с несколькими сайтами. Поэтому вы должны полностью его контролировать. В то время как виртуальный сервер является полу-выделенным, разделяется между несколькими пользователями (сродни виртуальному разделяемому хостингу).

Opcode: Alternative PHP Cache

Альтернативный PHP кэш. Это бесплатное Open Source PHP решение, которое кэширует PHP-код.

Opcode: eAccelerator

Ускоритель и оптимизатор PHP-кода.

Opcode: XCache

Это самый быстрый и стабильный кэш PHP Opcode, который полностью поддерживается как Linux, так и Windows.

Opcode: WinCache

Разработан специально для Windows, как Open Source-решение для кэширования PHP Opcode, кэширования файлов, уведомлений об изменениях файлов, кэш-сессии.

Multiple Server

Когда сайт разделяет ресурсы более чем одного сервера и доступен Memcache, то нужно использовать эту опцию.

3. Minify (минимизация)

Минимизация CSS- и JS-файлов и HTML-кода сокращает размер и количество файлов, которые в конечном итоге увеличивают скорость загрузки страниц.

Эту часть плагина W3TC нужно настраивать очень внимательно. Тут есть отдельные разделы в выпадающем меню для HTML, JavaScript и CSS. Необходимо протестировать каждую из этих опций одну за другой, а затем проверить сайт, чтоб выяснить, либо они работают корректно, либо нет.

Minify: включите опцию, поставив галочку

Minify Mode

Эта опция может работать автоматически. Но если автоматически она не работает хорошо, то используйте Manual. Ручную настройку мы будем рассматривать в следующем руководстве.

Minify Cache Method

Вы можете еще раз просмотреть объяснение этой опции выше. Рекомендованная опция здесь - Disk .

HTML Minifier

Можно использовать стандартный (Default ) минимизатор для HTML. Если у вас возникнут какие-либо проблемы с сайтом, как например, искажение шаблона, то попробуйте использовать Tidy вместо Default. Хотя он вряд ли покажет ошибку для минимизации HTML.

JS Minifier

Можно также использовать опцию JSMin для минимизации JavaScript, которая является стандартной. В случае возникновения каких-либо проблем, попробуйте альтернативные варианты.

CSS Minifier

Опять же, в случае с CSS Minifier, можно продолжать использовать стандартные опции до возникновения каких-либо проблем.

Если возникают какие-либо трудности в функционировании сайта, как например, искажение шаблона, то причина может быть в неправильной работе CSS или JavaScript. Для устранения этих неполадок отключите опции минимизации. Часто серверы Lite Speed конфликтуют с минимизацией.

W3 Total Cache – один из двух самых популярных плагинов для кеширования сайтов на WordPress. Сегодня у нас статья — руководство по полной настройке этого плагина.

Сама по себе установка W3 Total Cache простая, но потом плагин буквально начинает бомбардировать вас огромным количеством опций: тут вам и кэширование браузера, и объектное кэширование, и кэширование фрагментов диска, так что если вы не разработчик, то у вас голова пойдет кругом.

И еще факт, который реально раздражает — вы не можете просто взять и включить все опции. Если, как у большинства людей, у вас простой, виртуальный хостинг, то это может существенно затормозить работу всего вашего сайта. Так что, вам нужно выбрать и настроить нужные только вам типы кэширования.

1. Конфигурация Общих настроек (General Settings)

Существует два уровня настроек W3 Total Cache. Сначала вам нужно настроить «Общие настройки», где вы включаете или выключаете более 10 разных W3 Total Cache-опций. Затем вам откроется доступ к отдельным страницам с настройками для каждого модуля.

После инсталляции W3 Total Cache, вам, прежде всего, нужно зайти в «Общие настройки»:

Начнем с того, что откроем таб «Общие настройки». Вот как нужно настроить каждую опцию, которую вы видите на странице «Общие настройки»:

1.1 Общие (General)

Первый бокс позволяет вам быстренько включить или отключить все опции W3 Total Cache. Было бы здорово просто взять и нажать на эту кнопочку.., но нельзя.

Также здесь можно включить режим привью (Preview mode). В этом режиме все внесенные изменения не коснуться живого сайта, пока вы их не одобрите окончательно. Если вы работаете на загруженном живом сайте, то стоит использовать этот режим. Но если вы настраиваете W3 Total Cache на свежей WordPress-инсталляции или на вашем сайте мало трафика, то просто проигнорируйте этот режим.

1.2 Кэш страницы (Page Cache)

Следующий бокс – это кэш страницы (Page Cache). Кэш страницы – это то, что вам нужно. Одно кэширование страницы уже способно существенно улучшить производительность вашего сайта. После включения этой опции, вам нужно выбрать метод кэширования страницы (Page cache method).

Метод, зависит от вашего хостинга.

  • Для виртуального хостинга: выберете Disk: Enhanced.
  • Для выделенного сервера или VPS: вы можете использовать один из методов кэширования Opcode

Если вы не уверены в том, какой вид хостинга используете, то, вероятно, у вас все-таки виртуальный хостинг 🙂 так что если сомневаемся, выбираем метод Disk: Enhanced.

1.3 Minify (Минификация)

Переходим к следующему пункту: Minify. Минификация – это базово уменьшение файлов HTML, CSS и JavaScript без потери их функциональности. Эффект достигается путем удаления ненужной информации, типа разрывов строк и длинных пробелов. Вот почему минимизированный код так тяжело читать человеку.

Не вдаваясь в детали, минификация – это нечто такое, что всегда рекомендует Google PageSpeed, так что ей нельзя пренебрегать.

Когда вы кликаете на кнопочку включить, W3 Total Cache выводит предупреждение о том, что на сайте возможно появятся неполадки. И они действительно могут появиться, так что вам нужно будет подстроить минификацию под себя.

Начнем с того, что поставим Minify mode в режим Auto. Я не могу обещать, что в этом случае ваш сайт продолжит бесперебойно работать. Если сайт прекратил нормально работать, то поиграйте с настройками. В таких случаях я обычно переключаюсь на плагин типа Autoptimize для минификации, или же просто отключаю эту опцию в W3 Total Cache. Также можно использовать CloudFlare со встроенной минификацией.

Обязательно сначала попробуйте минификацию W3 Total Cache, хотя этот способ и не дает гарантии, что ваш сайт будет работать также стабильно, как прежде.

1.4 Opcode Cache

Свежие версии W3 Total Cache включают Opcode кэширование. Но если у вас виртуальный хостинг, вы, вероятно, даже не сможете включить эту опцию. Для большинства пользователей эта опция недоступна, так что я не обращаю на нее внимание.

1.5 Database Cache (Кэш базы данных)

Согласно мнению разработчиков W3 Total Cache, “W3TC – это швейцарский нож, который вы должны попробовать. В общем caching object cache и database cache to disk — это то, что использовать не рекомендуется.”

Кэширование базы данных (Database caching) может потенциально разогнать ваш сайт, переместив исполнение процессов из базы данных в процессор/память. Но есть проблема – для большинства виртуальных хостингов база данных лучше работает с нагрузкой, чем процессор или память. Так кэширование базы данных может замедлить работу вашего сайта, перегрузив другие аспекты вашего сервера.

Так что, если у вас виртуальный хостинг, то лучше оставить кэширование базы данных отключенным.

1.6 Object Cache (Объектное кэширование)

Объектное кэширование может разогнать ваш WordPress-сайт…или же может существенно затормозить работу админки WordPress.

Если вы пытаетесь понять, почему админка WordPress медленно работает, то, прежде всего, вам следует отключить объектное кэширование. Вот почему я рекомендую отключить объектное кэширование. Конечно, вы можете это все протестировать, но если у вас виртуальный хостинг, то этот вид кэша вряд ли будет полезен, а скорее всего, затормозит работу админки.

Но здесь есть одно исключение: если у вас есть крайне динамичный проект (например, BuddyPress, bbPress и т.д.), вы можете рассмотреть объектное кэширование.

1.7 Browser Cache (браузерное кэширование)

Если вы когда-нибудь прогоняли свой сайт через Google PageSpeed Insights, то вы вероятно, знаете, что “leverage browser caching” (усилить кэширование браузера)– это любимое сообщение данного инструмента. И здесь вы можете применить это усиление.

Кэширование браузера – это простой метод улучшения производительности сайта путем кэширования данных в браузере посетителя. Так как все упирается в локальное хранение данных на компьютерах ваших посетителей, то не нужно бояться того, что работа вашего сайта затормозится.

Неважно, какой у вас хостинг, в любом случае вы должны обязательно включить этот вид кэширования

1.8 CDN

Если вы используете CDN, вы можете подключиться к W3 Total Cache с помощью этой опции. Вы можете попытаться найти ваш CDN-сервер в выпадающем меню, или выбрать Generic Mirror, если в списке нет нужной опции.

Если вы используете CloudFlare, не нужно интегрироваться здесь. Вместо этого вам нужно будет добавить расширение CloudFlare. Вы можете сделать это из таба Extensions.

Если вы не используете CDN, то не включайте этот бокс. Включать эту опцию нужно только, если у вас уже есть CDN провайдер.

1.9 Reverse Proxy (Обратный прокси)

Большинство WordPress-сайтов должно игнорировать эту опцию. Обратный прокси – это такая вещь, что если вы настолько продвинуты, что уметь ее использовать, то вам вероятно нет нужды читать этот гайд:)

1.10 Monitoring, Fragment Cache, Misc, and Licensing (Мониторинг, Кэш фрагмента, Misc и лицензирование)

Эти опции вы можете просто проигнорировать: пропустите их и преступите к секции Debug.

1.11 Debug (устранение проблем) Monitoring, Fragment Cache, Misc, and Licensing

Если у вас возникли проблемы с W3 Total Cache, то вы можете включить дебаг-опции, но только временно. Для обычного использования отключите все эти боксы. Так как если они не используются для решения проблем, то производят много лишнего кода.

Вот и все настройки секции General Settings. Не забудьте сохранить изменения.

Настройка индивидуальных методов кэширования

Теперь давайте настроем методы кэширования, которые включили ранее. Вам не нужно настраивать выключенные опции, так что настраиваем только включенное ранее. Предупреждаю, что если я не описал далее какие-то настройки, то вы можете оставить все, как есть по умолчанию, так как просто слишком много опций, чтоб писать по каждому пункту.

Настройка Кэширования страницы (Page Caching)

Сначала идет кэширование страницы. Здесь большинство настроек оставляем по умолчанию, но есть несколько важных моментов, которые надо настроить.

Прежде всего, если вы используете SSL, вы должны поставить галочку напротив Cache SSL (https) requests. Также поставьте галочку напротив Cache feeds, не зависимо от того, используете вы SSL или нет:

Немного прокрутите страницу вниз и включите опцию Automatically prime the page cache. А также вам нужно выбрать Preload the post cache upon publish events. Здесь можно оставить цифры, как по умолчанию. Убедитесь в том, что вы также добавили URL карты сайта:

Если вы не уверены в своих действиях, то все остальное оставьте так, как есть, но убедитесь в том, что сохранили изменения.

Настройка Minify

Секция «Минификация» может быть не так проста в настройке. Ведь пока вы что-то не попробуете, вы не узнаете, насколько негативно это скажется на работе вашего сайта. Так что советуем вам начать с настроек по умолчанию. Но если что-то с сайтом пойдет не так, то придется немного поработать с настройками.

Вы можете попытаться поиграть с настройками минификации плагина W3 Total Cache, чтоб решить какую-либо проблему. Но тут надо будет очень сильно углубиться в проблему, а это не так уж легко, если вы не разработчик.

Я думаю, что гораздо проще переключиться на Autoptimize, если настройки минификации W3 Total Cache по умолчанию вызывают проблемы. Если вы используете CloudFlare, вы также можете использовать преимущества встроенной минификации CloudFlare.

Так что если вы переключитесь на Autoptimize или CloudFlare, убедитесь в том, что вы отключили минификацию в табе General Settings.

Object cache

Тут можно выставить время жизни объектов кэша и интервал очистки. Оставьте время как есть, по умолчанию. Настройки ниже касаются мультисайтовости, так что их тоже трогать не стоит большинству пользователей.

Как настроить кэш браузера (Browser Cache)

Теперь вам нужно настроить кэш браузера. Не забудьте, что я пропустил настройку database caching и object caching, потому что большинство из вас должно эти опции отключить.

Для кэширования браузера вы должны включить 6 первых опций, а именно:

  • Set Last-Modified header
  • Set expires header
  • Set cache control header
  • Set entity tag (eTag)
  • Set W3 Total Cache header
  • Enable HTTP (gzip) compression

Прокрутите страницу вниз и поставьте галочку напротив пункта Do not process 404 errors for static objects with WordPress. Все остальное советуем оставить, как есть.

Настройка CDN

К сожалению, здесь мы не можем дать вам точных инструкций, так как настройки зависят от того какой CDN вы используете и используете ли вообще. К счастью благодаря тому, что W3 Total Cache – это очень популярное решение, большинство CDN-провайдеров предлагает детальные инструкции процесса настройки.

Помните, что если вы используете CloudFlare в качестве WordPress CDN, вам нужно добавить расширение CloudFlare в табе Extensions.

W3 Total Cache Extensions (Расширения)

Я уже упомянул расширение CloudFlare, но W3 Total Cache также включает расширения для большого количества других инструментов.

Например, есть расширения для:

  • Google AMP pages
  • CloudFlare
  • FeedBurner
  • Genesis Framework (Обязательно установите, если используете Genesis)
  • Yoast SEO
  • WPML (Обязательно установите, если используете WPML для перевода).

Каждое расширение требует какой-либо настройки. К примеру, если вы включите CloudFlare, вам нужно будет ввести API-ключ активации. Затем вы можете работать с функциями CloudFlare прямо из W3 Total Cache:

Слишком сложно? Просто выберете другой плагин кэширования.

W3 Total Cache — плагин конечно мощный и будет отличным решением для опытных пользователей, но для новичков рекомендую использовать более дружественные к пользователю плагины кэширования, к примеру Cache Enabler , или великолепный WP-Rocket . Вам нужно потратить час, чтоб настроить W3 Total Cache, а в случае например, с Cache Enabler вам потребуется всего минуточка.

Конечно, тот же Cache Enabler не имеет опций настройки для кэша базы данных, объектного кэширования и прочего. Но обычные WordPress-пользователи и не нуждаются в подобной функциональности. Удачи вам в оптимизации.

  • Большое количество опций делает этот плагин очень гибким для тонкой настройки; его иногда называют фреймворком для увеличения производительности работы сайта
  • Плагин мега популярный, активно развивается, и по нему вы всегда можете найти огромное количество информации в сети
  • Работает хорошо на обычном виртуальном хостинге, но на выделенном хостинге вы можете выжать еще больше из него, а для экстремалов есть про версия.
  • Русского языка нет, но вы можете найти в интернете готовый перевод — W3 Total Cache русский язык

Кэширование сайта позволяет во много раз ускорить загрузку страниц, и плагин W3 Total Cache один из лучших настраиваемых вариантов для этого.

Предварительные действия до установки плагина

  1. Отключите другие установленные плагины кэширования , чтобы избежать возможных конфликтов
  2. Сделайте бэкап базы данных (чтобы чувствовать себя спокойно)
  3. Проверьте текущую скорость загрузки сайта через сервис gtmetrix.com, чтобы вы могли отследить изменения после оптимизации.

Установка и настройка W3 Total Cache

Плагин устанавливается обычным способом. Скачать его можно отсюда https://wordpress.org/plugins/w3-total-cache/ , или через поиск в консоли wordpress.

После активации вы увидите большое меню с самыми разнообразными опциями внутри. Не пугайтесь, большинство из них вы скорее всего не будете использовать. А если вы администрируете свой выделенный сервер, то вы легко разберетесь с продвинутыми настройками.

На странице Performance -> Install выложена инструкция по базовой установке.

Если вы хотите увидеть более детальное описание модулей и настроек W3 Total Cache — рекомендую посетить переведенное руководство из 3-х частей на сайте wpcafe.org

Здесь мы рассмотрим минимальный набор настроек, чтобы запустить плагин и работу кэширования.

  1. Установите права 755 на каталог wp-content/ — в консоли, в файловом менеджере, или в ftp клиенте, любым удобным для вас способом.
# chmod 755 /var/www/vhosts/domain.com/httpdocs/wp-content/
  1. На вкладке основные настройки Performance -> General выберите способ кэширования для страниц, базы данных и минификации. В большинстве случаев «хорошими» настройками являются — метод disk enhanced для кэширования страниц, метод disk для минификации и для кэширования базы данных.
  2. Compatibility Mode — опция режима совместимости в секции Page Cache Settings включает функциональность, которая оптимизирует взаимодействие кэширования с WordPress. По умолчанию опция отключена, но очень рекомендуется.
  3. На вкладке Minify все рекомендуемые опции предустановлены.
  1. На вкладке Browser Cache HTTP компрессия включена по умолчанию. Включите другие опции, чтобы настроить кэш и сроки хранения в браузере.

  1. Если к вашему сайту подключен CDN, перейдите на вкладку Content Delivery Network для настройки необходимых полей.

Если у вас нет CDN провайдера, вы можете настроить self-hosted — вариант на своем сервере. Прочитайте для этого FAQ

  1. На вкладке Database Cache рекомендуемые настройки предустановлены
  2. На вкладке Object Cache рекомендуемые настройки предустановлены

На последних двух вкладках используйте метод disk с осторожностью, потому что на виртуальном хостинге это может стать причиной снижения производительности

Вы видите, опций и настроек много, но вам необязательно на каждую из них жать.

Напоследок, многих волнует такой вопрос:

Что лучше — W3 Total Cache или WP Super Cache?

Ответ — оба хорошо выполняют свою задачу.

Их главное отличие:

  • WP Super Cache позиционируется как простое решение для кэширования WordPress, хотя в нём тоже есть раздел с некоторыми продвинутыми настройками
  • W3 Total Cache — однозначно более настраиваемый и гибкий плагин. Особенно, если вы держите сайт на выделенном сервере, он может оказаться вашим лучшим вариантом для выдачи оптимальной производительности.

Расскажу вам «секрет» как сделать выбор между ними. Не опирайтесь на чужие мнения. Ваш сайт может быть уникальным в коде, дизайне и характеристиках сервера.

  • установите первый плагин, включите кэш, откройте несколько страниц, убедитесь визуально в его работе. Измерьте производительность сайта , сделайте скриншоты по возможности.
  • установите второй плагин, включите кэш и рекомендуемые модули, протестируйте работу сайта и затем снова измерьте скорость.
  • сравните с результатами первого и оставьте тот, который выдал для вас наилучшие результаты
  • не забывайте, что есть другие плагины на рынке, платные и бесплатные — почитайте документацию к ним или протестируйте самостоятельно.

У меня бывали случаи, когда один плагин кэширования конфликтовал с другими установленными плагинами , а второй работал отлично. И наоборот.

Поэтому, лучший плагин — это тот, который у вас работает и стабильно обеспечивает оптимальную производительность из коробки.

Экспериментируйте, оставляйте комментарии и делитесь результатами.