Сторінка 4 - Ihor Vansach
- 1 хв читання
Сьогодні (12 лютого 2020 р.) нас повідомили про потенційну проблему безпеки в нашому завдяки Daniel Sloof від твіт.
Переглянувши код та поспілкувавшись з Derrick Heesbeen, Lewis Voncken з experius.nl , було виявлено проблему безпеки.
Зверніть увагу, що на сьогоднішній день жодних підтверджених атак, пов’язаних із цією проблемою, не було, проте зловмисники потенційно змогли увійти до облікового запису клієнта за короткий проміжок часу після того, як користувач з правами адміністратора натиснув кнопку «Увійти як клієнт» на панелі адміністратора та до того, як користувач з правами адміністратора був перенаправлений на вітрину магазину та фактично увійшов у систему.
Час дуже важливий для відтворення цієї проблеми. Проблема безпеки може виникати на всіх версіях «Увійти як клієнт» до версії 2.2.3 протягом кількох секунд після натискання кнопки «Увійти як клієнт».
Ми рекомендуємо всім, хто використовує розширення «Увійти як клієнт» версії 2.0.0 - 2.2.2, оновити його до оновіть розширенняihor
- 3 хв читання
Модулі у файловій структурі Magento 2
Файли модулів у Magento 2 розташовані у 2 каталогах.
1. app/code/<VendorName>/<ModuleName>/
2. vendor/<vendor-name>/<module-name>/
Назва постачальника — назва компанії/особи, яка розробила модуль. У деяких випадках назва постачальника може збігатися з назвою компанії замовника. Тому перед розробкою нового модуля слід узгодити назву. У прикладах ми використовуємо нашу назву — Magefan.
Файли модулів, розроблені на замовлення, або модулі від інших компаній, встановлені через FTP, знаходяться в папці app/code .
Папка vendor містить кореневі модулі, а також модулі, встановлені за допомогою майстра веб-налаштування або Composer. Ви знайдете кореневі модулі Magento у vendor/magento .
Цікаво знати: У репозиторії Magento 2 (гілка dev) на GitHub ( https://github.com/magento/magento2 ) усі кореневі модулі знаходяться в папці app code/Magento. А всі бібліотеки PHP знаходяться в lib/internal/Magento.
Ця структура використовувалася під час розробки Magento 2ihor
- 1 хв читання
Для роботи з phpMyAdmin вам потрібно налаштувати вебсервер. Якщо він не встановлено, використовуйте .
У цій статті ми опишемо 2 phpMyAdmin способи встановлення:
1. Завантажте phpMyAdmin з офіційного вебсайту.
Він підходить для всіх, незалежно від операційної системи. Щоб розпочати, перейдіть до розділу завантажень на сайті phpmyadmin.net та завантажте архів з останньою доступною версією phpMyAdmin на свій комп'ютер.
Після завершення помістіть папку архіву у свій веб-каталог. Для зручності перейменуйте її на "phpMyAdmin".
Якщо ви використовуєте локальний веб-сервер, скористайтеся цими посиланнями http://localhost/phpMyAdmin або http://127.0.0.1/phpMyAdmin для доступу до phpMyAdmin.
2. Встановлення з репозиторію Ubuntu
Другий метод корисний лише для користувачів OC Ubuntu. Щоб встановити phpMyAdmin:
1. Оновіть доступні дані пакета. Виконайте команду:
sudo apt update
2. Встановіть phpMyAdmin. Виконайте команду:
sudo apt install phpmyadmin
Під час встановлення система запропонує вам вибратиihor
- 2 хв читання
Якщо ви хочете налаштувати веб-сервер і шукаєте поради, ця стаття для вас. Ось інструкції з налаштування веб-сервера ( LAMP = Linux + Apache + MySql + PHP) на ОС Ubuntu 20.04, у зв'язку з:
Apache 2PHP 8Mysql Sever 8
Щоб почати, перейдіть до CLI (інтерфейс командного рядка). Ви можете відкрити його за допомогою комбінації клавіш Ctrl + Alt + T . Якщо ви не хочете налаштовувати локальний веб-сервер, вам потрібно підключитися до сервера через SSH.
Після встановлення відповідного екземпляра в терміналі увійдіть у режим суперкористувача (root або sudo user). Виконайте таку команду:
sudo su
та введіть пароль до свого облікового запису, якщо потрібно.
Виконайте такі кроки для встановлення веб-сервера:
1. Оновіть доступну інформацію про пакет. Виконайте цю команду:
sudo apt update
* У прикладах команди, які має виконати суперкористувач, починаючи зі слова sudo . Вам не потрібно використовувати sudo в режимі суперкористувача.
2. Встановіть веб-сервер Apache 2.
sudo apt install apache2 gedit
3. Встановітьihor
- 2 хв читання
Вам не подобається бачити, коли ваш магазин Magento 2 не працює або перебуває в режимі обслуговування під час виконання команд розгортання Magento 2? Так? Чудово. Протягом наступних 5 хвилин ми допоможемо вам із цим болем. У Magefan ми створили bash-скрипт для Linux , який дозволяє вам запускати команди bin/magento setup без зупинки магазину, тривалого простою та втрати продажів.
Увага! Ми не надаємо підтримку для цього скрипта, тому рекомендуємо використовувати .
Щоб використовувати розгортання Magento 2 zero-downtime, виконайте наведені нижче кроки:
1. Встановіть скрипт розгортання Magento 2 zero-downtime
Виконайте ці команди CLI в кореневому каталозі Magento:
wget https://raw.githubusercontent.com/magefan/magento2-zero-downtime-deploy/refs/heads/master/installation.sh -O zdd_installation.shsh zdd_installation.sh
2. Налаштуйте скрипт zero-downtime
Якщо ви використовуєте певні команди розгортання статичного вмісту, тоді відредагуйте файл
deploy/app/static-content-deploy.sh
Відредагуйтеihor
- 2 хв читання
Деякі можуть більше не використовуватися у вашому магазині. Причини цього можуть бути різними. Деякі модулі з часом втрачають актуальність, або може бракувати певних важливих функцій. Саме тому вам, можливо, варто видалити розширення.
Існує два способи видалення модулів у Magento. Ви можете видалити розширення вручну або через composer. Давайте розглянемо кожен з них детальніше.
Видалення розширення в Magento через Composer
Щоб видалити модуль Magento 2, розташований у постачальник/назва-постачальника/назва-модуля папка:
1. Підключіться до кореневої папки вашого Magento через SSH.
2. Знайдіть розширення, яке потрібно видалити, за допомогою такої команди:
php bin/magento module:status
3. Вимкніть розширення:
php bin/magento module:disable <ExtensionProvider_ExtensionName> --clear-static-contentphp bin/magento setup:upgrade
4. Перейдіть до свого composer.json файл, щоб знайти назву розширення за допомогою composer , а потім видалити його:
composer remove vendor-name/module-name
5. Виконайтеihor
- 1 хв читання
Коли відвідувач прокручує веб-сторінку вниз, зручно відображати кнопку, яка дозволить легко, одним клацанням миші, повернутися на початок сторінки.
(приклад кнопки)
Щоб увімкнути таку кнопку на своєму веб-сайті, виконайте такі прості кроки:
1. Створіть файл макета default.xml у каталозі вашої теми:
/app/design/frontend/ThemeVendor/ThemeName/Magento_Theme/layout/default.xml
2. Вставте XML-код:
<?xml version="1.0"?><page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:View/Layout/etc/page_configuration.xsd"> <body> <referenceContainer name="before.body.end"> <block name="magefan.go.to.top" template="Magento_Theme::gototop.phtml" /> </referenceContainer> </body></page>
3. Створіть файл шаблону gototop.phtml :
/app/design/frontend/ThemeVendor/ThemeName/Magento_Theme/templates/gototop.phtml
4. Вставте код:
<style type="text/css"> #mfbacktop { background: #324367; border: 2px solid white; border-radius: 100%; -webkit-box-shadow:ihor
- 1 хв читання
Якщо ваш пошук не працює, найімовірніше, проблема у вашій темі, яка перевизначає оригінальні шаблони блогу та файли макета.
Спробуйте виконати такі кроки:
1. Переконайтеся, що у вас остання версія модуля блогу Magento 2.
2. Спробуйте тимчасово видалити XML-файли макета блогу та PHTML-файли шаблону з вашої теми по одному та запустіть розгортання статичного контенту. Знайшовши файл, який викликає проблему, зверніть на нього увагу.
3. Перевірте, чи має кнопка пошуку блогу на бічній панелі атрибут "disabled" (вимкнено). Якщо так, то вона вимкнена (неактивна), і це може бути причиною проблеми. У цьому випадку знайдіть код, який робить її вимкненою. Атрибут disabled можна додати безпосередньо через файл .phtml у вашій темі або за допомогою JavaScript. Якщо ви не можете її знайти, ви можете вставити цей JS-скрипт, щоб скасувати активацію кнопки:
<script>require(['jquery', 'domReady!'], function($) { setInterval(function(){ $('#blog_search_mini_form .action.search').removeAttr('disabled');ihor
- 2 хв читання
Проблема « Ключ продукту порожній або недійсний. Розширення було автоматично вимкнено. Проблема » виникає з трьох поширених причин. Зазвичай це пов’язано з використанням застарілої версії модуля Magefan_Communty, завантаженням безкоштовної версії модуля для Magento Commerce або використанням розширення Translation v2.2.9.
Давайте подивимося, що можна зробити, щоб виправити цю проблему в різних випадках.
Рішення для Magento з відкритим кодом (CE)
Якщо ви отримуєте цю помилку під час збереження розширення Magefan у версії Magento Community і не бачите жодного поля Ключ продукту , як на скріншоті:
переконайтеся, що у вас встановлена остання версія розширення Magefan Community .
Примітка: Спільнота Magefan не є блогом Magefan і не є входом до Magefan як клієнта. Це окремий модуль, який використовується разом з усіма розширеннями Magefan .
Щоб перевірити версію розширення Magefan Community, перегляньте один із цих файлів:
app/code/Magefan/Community/composer.jsonapp/code/Magefan/Community/etc/module.xmlvendor/magefan/module-community/composer.jsonvendor/magefan/module-community/etc/module.xmlihor
- 1 хв читання
Іноді замість реальної IP-адреси клієнта ви можете побачити 127.0.0.1 або якусь іншу неправильну IP-адресу клієнта у вашій панелі адміністратора Magento 2. Це може бути пов'язано з проксі-серверами, такими як Varnish, Cloudflare, Sucuri.net, , які можуть бути ввімкнені для вашого магазину Magento 2.
У цьому посібнику ми розглянемо, як вирішити цю проблему.
Примітка: Якщо ви використовуєте Модуль бази даних Magento 2 Geo IP від Magefan версії >2.3.5 і все ще стикаєтеся з проблемою неправильної IP-адреси, зв'яжіться з нами для подальшого розслідування.
Щоб вирішити проблему з неправильною IP-адресою, вам потрібно:
1. Створіть новий файл у каталозі Magento 2 :
app/etc/XIP/di.xml
2. Вставте код:
<?xml version="1.0"?><config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:ObjectManager/etc/config.xsd"> <type name="Magento\Framework\HTTP\PhpEnvironment\RemoteAddress"> <arguments> <argument name="alternativeHeaders" xsi:type="array"> ihor
- 2 хв читання
Налаштування відкладеного завантаження зображень – це одна з чудових функцій , яка дозволяє покращити швидкість завантаження веб-сайту та зменшити розмір сторінки, поступово завантажуючи зображення.
Після того, як ваші зображення завантажено в режимі відкладеного завантаження, ви можете бути впевнені, що не буде жодної затримки під час завантаження сторінки, спричиненої зображеннями, щоб ваші клієнти отримали найкращий користувацький досвід.
Як налаштувати відкладене завантаження зображень у Magento 2?
Спочатку вам потрібно встановити розширення від Magefan. Потім перейдіть до розділу Магазини > Налаштування > Розширення Magefan > Відкладене завантаження зображень та , щоб увімкнути його . Ви можете вибрати один із двох варіантів. Давайте поговоримо про обидва детальніше.
Відкладене завантаження всіх зображень веб-сайту
Все, що вам потрібно зробити для відкладеного завантаження всіх зображень веб-сайту, це вибрати відповідний варіант у полі вибору Блоки для відкладеного завантаження . Однакihor
- 1 хв читання
Щоб отримати зображення публікації зі зміненим розміром у , ви можете використовувати цей код у файлах шаблону:
<?php
$width = 100;
$height = 150;
$imageHelper = $this->helper(\Magefan\Blog\Helper\Image::class);
?>
<img
src="<?php echo $imageHelper->init($_post->getFeaturedImg())->resize($width, $height); ?>"
alt="<?php echo $block->escapeHtml($_post->getTitle()) ?>" />
. Якщо ви не хочете використовувати параметр висоти, ви можете виконати функцію зміни розміру лише з першим параметром, наприклад,
<?php echo $imageHelper->init($_post->getFeaturedImg())->resize($width); ?>
. Або якщо ви використовуєте Magefan Blog версії більше, ніж v2.9.8, ви можете використовувати цей рядок (він дозволить вам зберегти пропорцію ширини зображення x висоти файлу та не створювати квадратне зображення з білими рамками):
<?php echo $imageHelper->init($_post->getFeaturedImg())->resize($width, null, false); ?>
- 2 хв читання
ВІДМОВА ВІД ВІДПОВІДАЛЬНОСТІ: стаття написана програмістом PHP, який вирішує в перші роки ночі побути в ролі DevOps.Попередня конфігурація: Ubuntu 16.04, Apache2
Буває, що на одному і тому ж веб-сервері працюють відразу кілька веб-сайтів, і кожному з них потрібна певна версія PHP. За допомогою apache mod PHP можна одночасно використати лише одну версію PHP для всіх сайтів.
Ми покажемо як одночасно використовувати:
- php5.6 для веб-сайту http://php56.loc із встановленою Magento 1.7 - php7.2 для веб-сайту http://php72.loc із встановленою Magento 2.3.0.
Для вирішення цієї проблеми необхідно налаштувати PHP-FPM.
1. Встановіть PHP5.6 та PHP-FPM5.6
sudo apt install libapache2-mod-fastcgi php5.6-fpm php5.6 libapache2-mod-php5.6 php5.6-curl php5.6-intl php5.6-zip php5.6-soap php5.6-xml php5.6-mysqli php5.6-gd php5.6-mcrypt php5.6-mbstring php5.6-bcmath php5.6-pdo php5.6-xml php5.6-mysql
2. Встановіть PHP7.2 та PHP-FPM7.2
sudo apt install libapache2-mod-fastcgi php7.2-fpm php7.2ihor
- 2 хв читання
Властивість sortOrder для визначає, коли їх викликати (до, після або навколо методу), за умови, що для одного й того ж методу налаштовано більше одного плагіна. Правила пріоритетності
<config>
<type name="{ObservedType}">
<plugin name="{pluginName}" type="{PluginClassName}" sortOrder="1" disabled="false" />
</type>
</config>
такі:
Перед виконанням оригінального методу Magento запустить плагіни перед від найменшого до найбільшого значення в sortOrder.
. Частина коду плагіна навколо також буде виконана від найменшого до найбільшого значення перед викликом оригінального методу (викликається).
Властивість після того, як плагін викликається від найбільшого до найменшого після виклику оригінального методу.
Приклад:
Припустимо, що є три класи плагінів (Plugin10, Plugin20, Plugin30). Кожен клас плагіна має методи перед, після того, як плагін та навколо для одного й того ж методу. sortOrder виглядає наступним чином для кожного з них:
Plugin10 - 10Plugin20 - 20Plugin30 - 30ihor
- 1 хв читання
Створіть файл test.php у корені Magento 2, помістіть у нього код:
<?php
error_reporting(E_ALL);
ini_set('display_errors', 1);
use Magento\Framework\App\Bootstrap;
require __DIR__ . '/app/bootstrap.php';
define('SOURCE_MEDIA_URL', 'https://livestore.com/pub/media/'); //замініть це!!!
$bootstrap = Bootstrap::create(BP, $_SERVER);
$obj = $bootstrap->getObjectManager();
$state = $obj->get(Magento\Framework\App\State::class);
$state->setAreaCode('frontend');
$object = $obj->get(\Magento\Catalog\Model\ResourceModel\Product\Action::class);
$connection = $object->getConnection();
$mediaGallery = $connection->getTableName('catalog_product_entity_media_gallery');
$fileSystem = $obj->create(\Magento\Framework\Filesystem::class);
$mediaPath = $fileSystem->getDirectoryRead(\Magento\Framework\App\Filesystem\DirectoryList::MEDIA)->getAbsolutePath()
. 'catalog/product';
$select = $connection->select()
->from(['cps' => $mediaGallery]);
$data = $connection->fetchAll($select);
foreach ($data as $value) {ihor
- 1 хв читання
Remove DEFINER from MySQL Dumps
Якщо при імпорті бази даних ви зіткнулися з помилкою
ERROR 1227 (42000) at line xxx: Access denied; you need (at least one of) the SUPER privilege(s) for this operation
і в той же час в стрічці ххх дампу ви можете бачити ось такий код
/*!50017 */
Вам потрібно видалити DEFINER. Найлегше це зробити двома способами.
1) Зробити новий дамп бази даних з параметром --skip-definer і імпортувати його. Приклад:
mysqldump --skip-definer ...
2) Видалити DEFINER з поточного дампу. Для цього виконайте команду:
sed 's/\sDEFINER=`[^`]*`@`[^`]*`//g' -i mydump.sql
Remove DEFINER clause from MySQL Dumps
- 2 хв читання
Якщо ви вирішили поповнити словниковий запас англійських слів, та ще й працюєте з Magento 2 цей список можливо стане вам у пригоді. Віримо що чимало слів вам уже знайомі, але якісь точно будуть новими. Ми не надаємо їх перекладу, переклад ви можете легко знайти із відкритих джерел :-)
thenotpleaseyouforthisorderproductyourandemailnewwithenterattributeproductsaddressshippingarepaymentaddcustomervalueinvalidpaypalnumberaccounttemplatetaxnamestoredefaultdeletevalidhastypecannoterrorfilesaveselectinformationfrompasswordbeenallusesetcartcreditpricecodehavepageitemoptionsurlgrouplistoptionwrongmustonlytotalitemswillrequireddoesmethodsurelinkdatesearchfieldratecreatemoreeditfoundcardstatustransactionimagebillingviewexpressthatwentsomethingcategorydataspecifiedwhileavailableupdatecheckoutthaninvoicenowsettingsamountmessagewasstockexistshipmentcanmailtrywantruleselectedprioritythereemptyagainallowedenableskucorrectwishrightsavedshoppingcharacterswebsiteuserspecifydisplayqtycustomdeletedwhenquantitycreatedremoveflatkeycatalogreviewcouldalreadymemocustomersdetailschangesendtimeshowexistsreportadmincachediscountentityusedcurrencyblockconfigurationrequesttitlefindonegiftapplyoutnewsletterchecksamemaximumenvelopeconfirmationresetformatlastvatmagentounablemerchantheresavingsectionrequestedrefundbasegeneralcommentsystemallowtokenboxcontactsomefirstholdagreementgreatermatchsorryoccurredrowattributescontentbackupsentbackconditionsupstermssendersigncouponmodefailedactionimportequalfilescontainssortpathorderssubscriptionprovidedgetloglabelcurrentintegrationdayotherlettersenabledlifetimeupdatedbecauseapplicableseevaluespaymentsbuttextserviceinternationaladvancedapiaddresseswidgeteachbasedsalesmediashouldmakecmssubtotallongerstartdesigncountriesclicktrackingratesimageschoosemanagesizebeforeclasscountrycontinuenumbersinstanceweightpricesshipanothercopydisabledthemeaccesslatersitehandlingrecentlyreviewsincorrectperpurchaseviewedresponsemodelconsumeranyminimumusinguniquecancelafterwebscopelengthassociatedfeeadditionalbetweendirectoryvalidationneedverificationintowererolespecificlesspackagefreegridcategoriesstorefrontmultiplexmlobjectpickupstatecanceledexceptionrefreshgatewayinclnextaboutsynonymprocessrangeexpirationtypesguestratingletterdescriptionloginwebsitesserverrewritemessagesspacesstorageenteredcasedefinedconfigparentsitemapappliedprintregisteredlikesymbolsexamplealertfollowingplacecroninputmethodsexportsummarytheseindexdaysextensionourtooonlineexistingstaticfieldsleavemaydownloadableretrievegenerateexclresultsyesaddedzipformsupportedwithoutreversalactionsvideosecurecontaindatabasequeuefallbackchosenairfinancingcomparedconditionadvertisehostnamesettlementvariablestreetsecondshtmluploadgrandconfigurablepagesconfigurationsworldwideconfirmfiltercalculationstatisticsurlsrulesorderedhomeviewspermissionsinfopositionrelicreceivedabovehoursrelatedquotecolorrssgroupssuchremovedcompleteprohistorysubmitpendingunknownbusinessreportingcreditmemoincludephonemetaleastcommentscombinationmatchedcloseerrorsdifferentlongpaidcolumnrefundedskipconversionnotificationloadcapturedisablereportsassignheaderofflinesteplearnmovespecialvisiblethresholddestinationsessionduringdidclearmanypaylookssecuritysamplebuyfraudcountanchorchangescaptchabelowfixedpdflogoemailscouponsauthorizationduepayflowassignedlayoutaveragetracktestdigitslargegivenauthorizepartfieldnamealertscompareprocessingfoldergeneratedthankwelcomeperiodshownchangedrebuildwhatundefinedpreviewexpiredsmallnonemanagementmostdocumentjavascripttiermadesupportrowsuploadedreadoperationbasicfptforgotdeliveryrecordssuffixsuccessfullysolutioncharacterauthorizedqueryparametereveryusesdeletingreceivelimitdnspositivevoidexceedsactiveoriginaldynamicdebitdownloadcarrierrootopenglobalavailabilityencryptionmaintenancesourceentirewritableplacedminuteswebsiteidstorespartnerscustomergroupapprovedimplementchildprotectionavsmaxshipmentslabelspreviousclasseswithdrawalsynonymsenginecookiebeingtokenscurrentlyincludingtermidentifieroncedisplayednavigationtranslationredirectputinvoicesinvoicedheightdebugswatchpostalyearbraintreeautomaticbrowsesavervariationsfreightshippedloadingcredentialspostconfigurelowduplicatethroughinterfaceautoinitializeregionpropertiesconfirmedshareacceptedintegrationspurchasesyetftpvalidatepercentagecostsensitivebuyerreferenceusersvirtualhttptldtabnamesexcludingdropdownstringblankproductionexpressiongenerationeavbeginableproperwelllegalpaddedcsvpackagessubscribedcvvrecommendeddownloadsnumericinactivealwaysendreasonlocaltimesscheduledoptimizationtransferpercentrequireunderscoreshareddefinegroupedfeaturerefundsloggedagreementssettingunavailableblocksfullelementbundleprefixadaptertimeoutincrementscartsexcelstandardnotifygroundunitinstalledmodulelocksetupreturnseparatedfeedpngcreatingsynchronizebalancecomparisonfedexhostedpurchasedcommandtotalselasticsearchtransactionsextendwindowlistingacceptwhichtemporarilylocationoauthlockedpayermonthwarningadministratorvoidedautomaticallycitybooksuccesscalculatesubwriteihor
- 1 хв читання
Якщо з якоїсь причини вам потрібно скопіювати з однієї бази даних ( DB1 ) до іншої ( DB2 ) (фактично імпортувати дані блогу з однієї інсталяції Magento до іншої), виконайте такі дії:
1. Переконайтеся, що екземпляр Magento 2, який використовує DB2, має таку ж версію розширення блогу, як і той, що використовує DB1. Якщо ні, оновіть модуль Magento 2 Blog на одній з них.
2. Створіть резервну копію таблиць magefan_blog_* у DB2.
3. Видаліть усі таблиці magefan_blog_* з DB2.
4. Зробіть експорт (дамп) усіх таблиць magefan_blog_* з DB1
5. Імпортуйте дамп DB1 до DB2.
Використовуючи цю інструкцію, ви легко перенесете ВСІ дані блогу з DB1 до DB2 . Для маніпуляцій з базою даних ви можете використовувати phpMyAdmin , Adminer.
- 2 хв читання
Якщо ви вирішили видалити , виконайте наведені нижче дії. Ви можете зв’язатися з нашою командою для безкоштовної консультації, якщо у вас виникнуть проблеми з розширенням Magefan.
Видалення файлів розширення
Інструкції з видалення файлів залежать від способу встановлення розширення Blog.
1. Якщо ви можете знайти файли розширення в папці
app/code/Magefan/Blogapp/code/Magefan/BlogPlusapp/code/Magefan/BlogAuthorapp/code/Magefan/BlogAuthorapp/code/Magefan/BlogImport
, видаліть ці папки.
2. Якщо розширення було встановлено через composer , а його файли знаходяться в папці
vendor/magefan/module-blog
, тоді виконайте команду composer CLI, щоб видалити його
composer remove magefan/module-blog*
. Після видалення файлів розширення виконайте ці команди Magento CLI:
php bin/magento setup:upgradephp bin/magento setup:di:compilephp bin/magento setup:static-content:deployphp bin/magento cache:flush
Примітка: якщо ви не хочете, щоб ваш веб-сайт був недоступний під час розгортання, спробуйте ці .
Видаленняihor
- 1 хв читання
Якщо ви вирішили видалити , виконайте наведені нижче дії. Ви можете зв’язатися з нашою командою для безкоштовної консультації, якщо у вас виникнуть проблеми з розширенням Magefan.
Видалення файлів розширення
1. Якщо ви можете знайти файли розширення в папці
app/code/Magefan/Blog
, видаліть цю папку.
2. Якщо розширення було встановлено через composer , а його файли знаходяться в папці
vendor/magefan/module-login-as-customer
, тоді виконайте команду composer CLI, щоб видалити його
composer remove magefan/module-login-as-customer
. Після видалення файлів розширення виконайте ці команди Magento CLI:
php bin/magento setup:upgradephp bin/magento setup:di:compilephp bin/magento setup:static-content:deploy
Примітка: якщо ви не хочете, щоб ваш веб-сайт був недоступний під час розгортання, спробуйте ці .
Видалити дані розширення (необов'язково)
Увага! Це очистить усі записи входу, журнал клієнтів та конфігурації розширень.
1. Про всяк випадок, будь ласка, зробіть повну резервну копію (дамп) вашоїihor
- 1 хв читання
Якщо ви вирішили видалити , виконайте наведені нижче дії. Ви можете зв’язатися з нашою командою для безкоштовної консультації, якщо у вас виникнуть проблеми з розширенням Magefan.
Видалення файлів розширення
Інструкції з видалення файлів залежать від способу встановлення розширення Auto Currency Switcher.
1. Якщо ви можете знайти файли розширення в папці
app/code/Magefan/AutoCurrencySwitcher
, видаліть цю папку.
2. Якщо розширення було встановлено через composer , а його файли знаходяться в папці
vendor/magefan/module-auto-currency-switcher
, тоді виконайте команду composer CLI, щоб видалити його
composer remove magefan/module-auto-currency-switcher
. Після видалення файлів розширення виконайте ці команди Magento CLI:
php bin/magento setup:upgradephp bin/magento setup:di:compilephp bin/magento setup:static-content:deploy
Примітка: якщо ви не хочете, щоб ваш веб-сайт був недоступний під час розгортання, спробуйте ці .
Видалення даних розширення (необов'язково)
Увага! Це очистить усі конфігураціїihor
