Архів по місяцям: Вересень 2020
Якщо ви стикнулися з неочікуваним 301 або 302 редіректом у Magento 2 і не знаєте чому він стається та який код його викликає, ви можете легко це зясувати тимчасово відредагувавши наступні файли:
/vendor/magento/framework/HTTP/PhpEnvironment/Response.php /vendor/magento/framework/Controller/Result/Redirect.php
Відкрийте Response.php та додайте на початок функції setRedirect такий рядок:
var_dump($url); \Magento\Framework\Debug::backtrace(false, true, false); exit();
Приклад:
public function setRedirect($url, $code = 302)
{
var_dump($url); \Magento\Framework\Debug::backtrace(false, true, false); exit();
$this->setHeader('Location', $url, true)
->setHttpResponseCode($code);
return $this;
}
Тепер відкрийте другий файл Redirect.php і після кожного рядка в якому ви бачите:
$this->url =
додайте
var_dump($this->url); \Magento\Framework\Debug::backtrace(false, true, false); exit();
Приклад:
public function setRefererUrl()
{
$this->url = $this->redirect->getRefererUrl();
Привіт, фанати Magento!
Чи хочете ви дізнатись про новини та оновлення, які ми підготували для вас цього місяця?
Якщо ви вирішили видалити розширення Magento 2 Extended Product Grid, будь ласка, виконайте наступні кроки. Ви також можете зв'язатись з нашою командою для отримання безкоштовної консультації у випадку, якщо у вас виникнуть проблеми з розширенням Magefan.
Видалення файлів розширення
Інструкції щодо видалення файлів залежать від способу яким розширення було встановлено.
1. Якщо ви можете знайти файли розширення у папці
app/code/Magefan/ProductGridInline
тоді видаліть цю папку.
2. Якщо розширення було встановлено через композер та його файли знаходяться в папці
vendor/magefan/module-product-grid-inline
тоді запустіть наступну композер команду CLI , щоб видалити її
composer remove magefan/module-product-grid-inline
Після видалення файлів розширення запустіть ці CLI команди Magento:
php bin/magento setup:upgrade
php bin/magento setup:di:compile
php bin/magento setup:static-content:deploy
Примітка: якщо ви не хочете, щоб ваш веб-сайт був недоступний
Якщо вам потрібно оновити розширення Magento 2 Extended Product Grid від Magefan, будь ласка, виконайте наведені нижче дії.
Примітка: інструкції з оновлення залежать від методу, яким було встановлено розширення Extended Product Grid.
Оновлення через composer
Якщо модуль Extended Product Grid встановлено через composer (перевірте чи існує папка vendor/magefan/module-product-grid-inline
), тоді вам потрібно запустити ці прості CLI команди в каталозі Magento 2:
composer remove magefan/module-product-grid-inline
composer require magefan/module-product-grid-inline
^x.x.x
# замініть x.x.x на версію яку ви хочете використовувати
php bin/magento setup:upgrade
php bin/magento setup:di:compile
php bin/magento setup:static-content:deploy
Примітка: якщо ви не хочете, щоб ваш веб-сайт був недоступний під час розгортання статичного контенту, спробуйте команди для zero downtime deployment.
Оновлення через FTP
Якщо модуль Extended Product Grid було встановлено через FTP (перевірте чи існує папка
Ви можете встановити розширення Magento 2 Extended Product Grid від Magefan через composer або архів.
Бажаєте, щоб ми встановили для вас модуль Extended Product Grid? Наші девелопери зроблять це замість ваc – перегляньте наш інсталяційний сервіс.
Встановлення через composer (рекомендовано)
Будь ласка, підіть в свій акаунт Magefan Account > My Downloads > Install via Composer, щоб отримати інсталяційні інcтрукції.
Встановлення через архів та FTP
- Завантажте ZIP-архів розширення Extended Product Grid на сайті magefan.com (не з GitHub або ж інших джерел).
- Вилучіть файли.
- Скопіюйте папку app з архіву у свою папку Magento 2.
- У командному рядку за допомогою "cd" перейдіть до кореневого каталогу Magento 2.
- Запустіть команди CLI:
php bin/magento setup:upgrade
php bin/magento setup:di:compile
php bin/magento setup:static-content:deploy
Примітка: якщо ви не хочете, щоб ваш веб-сайт був недоступний під час розгортання статичного контенту, спробуйте команди для zero downtime deployment.
Після
У Magento 2 виникають ситуації, коли сторінка довго завантажєуться, і тоді ви отримуєте 500 фатальну помилку, обмеження пам’яті або помилку очікування (timeout error). Це називається нескінченним циклом (infinite loop) в PHP-коді, коли той самий код виконується знову і знову. Це пов’язано з основними проблемами Magento або, швидше за все, третьостороннім розширенням .
Щоб виправити нескінченний цикл (infinite loop) і знайти вхід у цикл, виконайте наведені нижче дії:
1. Відкрийте файл app/bootstrap.php та додайте наступний код у наступному після відкриваючого PHP тегу <?php рядку:
$_SERVER['MAGE_PROFILER'] = 'html';
2. Відкрийте файл vendor/magento/framework/Profiler.php та додайте наступний код на початок функції "public static function start($timerName, array $tags = null)" , напр.
Якщо ви тимчасово працюєте з великою кількістю різних версій Magento, можливо, вам доведеться мати метод, наприклад Xdebug, для швидкої перевірки зворотного відстеження (debug backtrace) виконання функцій у Magento 2, без встановлення та вмикання додаткового програмного забезпечення на сервері.
У цьому випадку ви можете використовувати власну функцію backtrace Magento з класу \Magento\Framework\Debug і викликати її, коли вам потрібно:
\Magento\Framework\Debug::backtrace(false, true, false);
В результаті ви отримаєте такий HTML debug-backtrace:
Якщо у вас є багатомовний магазин і ви хочете додати Store Codes до URL-адрес, щоб вони мали вигляд, як наприклад yourdomain.com/en, yourdomain.com/fr, yourdomain.com/au виконайте наступні кроки:
Підіть в Stores > Configuration > General > Web і знайдіть розділ Url Options. Там ви задаєте Add Store Code to URLs, вибравши Так у відповідному полі та зберігаєте налаштування.