Плагін WooCommerce є дуже популярним серед власників інтернет-магазинів, адже якнайкраще підходить для створення ecommerce-проєктів на базі CMS WordPress. Для WooCommerce розроблено безліч готових тем під різні товарні напрямки, проте велика кількість користувачів надає перевагу саме власним шаблонам, які потенційно краще враховують ті чи інші бізнес-потреби. Але з часом через це може виникнути конфлікт сумісності: автори WooCommerce випускають нову версію плагіну, його файли оновлюються, однак шаблони, поміщені у директорію з вашою власною темою, не замінюються в автоматичниму режимі і лишаються без змін.
Саме тому після чергового оновлення WooCommerce в адміністративній панелі сайту ви бачите попередження: «Ваша тема ( ) містить застарілі копії деяких файлів шаблону WooCommerce. Ці файли, можливо, знадобиться оновити, щоб переконатися, що вони сумісні з поточною версією WooCommerce» (див. скріншот нижче). Якщо інтерфейс панелі англійською мовою, то повідомлення виглядатиме так: «Your theme () contains outdated copies of some WooCommerce template files. These files may need updating to ensure they are compatible with the current version of WooCommerce».

Не будемо втрачати час, давайте одразу розглянемо можливі шляхи виправлення цієї помилки.
Зіткнулися з цією помилкою?
Виправлення файлів застарілих шаблонів WooCommerce: покрокова інструкція
У першу чергу варто скористатися рекомендаціями, наведеними в самому повідомленні про помилку. Перевірте, чи доступне оновлення для вашої активної теми. Якщо воно є, то застосуйте його. Цього часто достатньо, щоб замінити шаблони WooCommerce новими копіями файлів. Якщо ж оновлення немає, спробуйте поцікавитися у розробників теми про те, коли воно буде випущено.
Але бувають і трохи гірші ситуації. Наприклад, розробники вже припинили підтримку теми. Чи можна виправити файли шаблонів WooCommerce у такому випадку? Так! Для цього треба виконати такі дії:
- Відкрийте WooCommerce > Статус > Стан Системи.
- Перейдіть до розділу Перевизначення. У ньому ви знайдете перелік файлів, які мають застарілі версії.

Приклад повідомлення про застарілу версію файлу cart-shipping.php
- Порівняйте файли теми з відповідними файлами плагіну, використовуючи редактори коду (наприклад, PhpStorm). Зокрема, у PhpStorm є вбудована опція для порівняння вмісту. Для її виклику оберіть два файли, які ви хочете порівняти (клікніть по ним, натиснувши клавішу Ctrl), далі перейдіть до View > Compare With або натисніть Ctrl+D.
- Якщо ви помітили відмінності або доповнення у файлах плагіну WooCommerce, то проаналізуйте їх та, за необхідності, внесіть відповідні виправлення у файли теми. Зазвичай розробники Woocommerce надають перелік впроваджених змін. Ознайомитися з ним можна за посиланням https://developer.woocommerce.com/releases/.
Як оновити файли шаблонів WooCommerce: приклади
Приклад 1
Порівняймо версії файлів proceed-to-checkout-button.php за допомогою PhpStorm (тут і далі файли шаблонів теми будуть розміщуватися зліва, а файли шаблонів плагіну - справа):

Аналіз показує наступні відмінності:
- шаблон теми має версію 3.4.0, а актуальною є 7.0.1;
- html-розмітка шаблону теми відрізняється від тієї, що є у плагіні (ми бачимо, що у темі коду більше).
Для виправлення проблеми потрібно:
- синхронізувати версію (прописати у файлі теми той номер версії, який вказано у файлі плагіну WooCommerce;
- html-розмітку можна залишити як є, адже це користувацька адаптація автора теми.
Приклад 2
Порівняймо файли cart-empty.php:

Відмінності:
- шаблон теми використовує версію 3.5.0, а плагін має 7.0.1;
- бачимо коментар, що з версії 4.6.8 введено фільтр «woocommerce_return_to_shop_text», який обробляє вивід фрази «Return To Shop». У файлі теми цей фільтр відсутній.
Що робити:
- синхронізувати версію;
- перенести в тему фільтр «woocommerce_return_to_shop_text».
Приклад 3
Порівняємо файли payment.php:

Відмінності:
- знову ж таки, бачимо різні номери версій;
- замість застарілої функції is_ajax() впроваджено актуальну wp_doing_ajax().
Як виправити:
- синхронізувати версію;
- замінити функцію is_ajax() у темі на wp_doing_ajax().
Поради для самостійного усунення проблеми
Аналізуючи файли, сфокусуйтеся на кількох моментах:
- розбіжності html-розмітки не завжди є проблемою, адже вони найчастіше і є першопричиною кастомізації шаблонів WooCommerce. У більшості випадків, їх можна ігнорувати;
- звертайте увагу на нові фільтри та хуки (функції apply_filters(), do_action()), а також коментарі, запропоновані розробниками плагіну. Аналізуйте кожен з них та вирішуйте, чи потрібні вони для вашої теми;
- обов’язково замініть застарілі функції актуальними;
- пропишіть актуальну версію файлу шаблону у своїй темі;
- після внесення всіх змін поверніться до розділу «Перевизначення», щоб впевнитись, що повідомлення про конфлікт версій більше не відображається.

Після вдалої роботи з файлом cart-shipping.php бачимо, що повідомлення про застарілу версію зникло
Можливо вам потрібна наша допомога?
