Jak naprawić najczęstsze problemy w Magento 2?

Opublikowany: 2022-01-02

W nowej wersji Magento czyli Magento 2 pojawiły się nowe trudności. Kiedy planujesz uaktualnić swoje starsze wersje Magento do nowej, możesz napotkać niektóre z tych problemów. W bieżącym wpisie na blogu omówimy typowe problemy w wersji Magento 2 oraz ich rozwiązania pomocne właścicielom sklepów Magento, deweloperom Magento oraz firmom deweloperskim Magento .

Typowe problemy w Magento 2 i ich rozwiązaniach

Doświadczeni programiści Magento lub jakakolwiek inna osoba mogą napotkać najczęstsze problemy podczas eksploracji platformy Magento 2. Problemy, z którymi możesz się zmierzyć, mogą być niezaprzeczalnie małym problemem, ale jeśli nie spróbujesz ich szybko rozwiązać, mogą stać się dla ciebie większymi problemami.

Pozwól nam więc zrozumieć najczęstsze problemy napotykane w Magento 2 wraz z ich rozwiązaniami:

Instalowanie przykładowych danych po konfiguracji Magento 2

Najpierw pobierz

przykładowe dane: sudo php bin/ magento sampledata:deploy

a następnie zainstalować,

przykładowe dane: konfiguracja sudo php bin/ magento: aktualizacja

LUB

sudo /opt/ lampp /bin/ php bin/ magento sampledata :deploy

sudo /opt/ lampp /bin/ php bin/ konfiguracja magento : aktualizacja

Instalowanie przykładowych danych po konfiguracji Magento 2

Czyszczenie pamięci podręcznej motywu/CSS

Aby wyczyścić pamięć podręczną motywów lub CSS, uruchom następujące polecenia:

sudo php bin/ magento cache: flush

sudo php bin/ magento cache: czyste

LUB

sudo /opt/ lampp /bin/ php bin/ magento cache: flush

sudo /opt/ lampp /bin/ php bin/ magento cache: czyste

Czyszczenie pamięci podręcznej motywu/CSS

Ponowne indeksowanie

W Magento 2 jeden lub więcej indeksatorów jest nieprawidłowych. Musisz więc upewnić się, że twoje zadanie Magento Cron jest uruchomione.

Aby ponownie zindeksować swój sklep, uruchom polecenie php bin\magento indexer:reindex w swoim CLI.

Jeśli chcesz ponownie zindeksować tylko jeden indeksator, wpisz polecenie php bin\magento indexer:reindex nazwa_indeksera gdzie nazwa_indeksera można znaleźć wpisując polecenie php bin\magento indexer:info

[Rozwiązano] Jak naprawić najczęstsze problemy w Magento 2 - reindeksacja

Usuwanie bloku z układu

W nowszych wersjach Magento 2 metoda usuwania to

<referenceBlock name=”block_name” remove=”true”/>

Na przykład:

 <?xml version="1.0"?> <page layout="1column" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../../lib/internal/Magento/Framework/View/Layout/etc/page_configuration.xsd"> <body> <referenceBlock name="block_name" remove="true"/> </body> </page>

Ustawianie trybu programisty

Tryb programisty można ustawić z poziomu bin/ magento CLI deploy:mode:set developer

Uzyskiwanie podstawowego adresu URL Magento 2

Jeśli chcesz uzyskać podstawowy adres URL , możesz wypróbować poniższy kod:

$this->_storeManager->getStore()->getBaseUrl()

Użyj również:

$this->_objectManager->get('Magento\Store\Model\StoreManagerInterface')
->getStore($storeId)
->getBaseUrl();

Aby uzyskać podstawowy adres URL multimediów:

$this->_storeManager->getStore()->getBaseUrl(\Magento\Framework\UrlInterface::URL_TYPE_MEDIA);

Sprawdzanie instalacji modułu

Aby sprawdzić listę włączonych lub wyłączonych modułów, użyj poniższego polecenia.

moduł magento:enable [-c|–clear-static-content] [-f|–force] [–all]

moduł magento:disable [-c|–clear-static-content] [-f|–force] [–all]

Korzystanie z biblioteki jQuery

Jeśli dodajesz swoją niestandardową bibliotekę js inną niż jQuery, musisz dołączyć kod js wewnątrz funkcji require jak

require(['jquery', 'jquery/ui'], function($){
//Twój kod js tutaj
});

Ustawianie limitu czasu sesji backendu

Możesz ustawić limit czasu sesji backendu z panelu administratora:

Sklepy->Ustawienia->Konfiguracja->Zaawansowane->Administrator->Zabezpieczenia->Czas życia sesji administratora (sekundy)

Błąd 404 dla skryptów i CSS

Gdy nie jest w trybie produkcyjnym, Magento 2 spróbuje utworzyć dowiązania symboliczne dla niektórych zasobów statycznych. Możesz zmienić to zachowanie, wykonując następujące czynności.

  • Otwórz app/etc/di.xml i znajdź nazwę virtualType = „developerMaterialization”. W tej sekcji znajdziesz element name="view_preprocessed" , który należy zmodyfikować lub usunąć. Możesz go zmodyfikować, zmieniając zawartość z Magento\Framework\App\View\Asset\MaterializationStrategy\Symlink na Magento\Framework\App\View\Asset\MaterializationStrategy\Copy
  • Usuń pliki pod pub/static, aby pozbyć się wszelkich istniejących dowiązań symbolicznych. Możesz uważać, aby nie usunąć .htaccess

Typowe problemy z SEO w Magento 2

Analizując nową platformę Magento 2, natrafiliśmy na najczęstsze błędy, jeśli chodzi o SEO . Witryny oparte na Magento 2 mogą odnieść sukces, gdy ich SEO jest ustawione bezbłędnie. W najnowszych wersjach Magento możesz znaleźć kluczowe ulepszenia wprowadzone w SEO. Najczęstsze błędy SEO i ich rozwiązania to:

Indeksowanie zarówno wersji HTTP, jak i HTTPS strony internetowej

Podczas indeksowania wersji HTTP i https witryny, jedna z wersji jest traktowana jako zduplikowana treść.

Aby uniknąć tego błędu, powinieneś indeksować preferowaną wersję, a druga wersja tego samego adresu URL powinna wskazywać wersję https z rel canonical. Na przykład https jest preferowaną wersją dla Twojej witryny, a następnie w kodowaniu HTML wersja HTTP powinna mieć kanoniczny rel wskazujący na https i na odwrót.

Parametry nawigacji warstwowej blokujące tekst

Zazwyczaj warstwowa nawigacja wcale nie jest dobra dla Twojej witryny pod względem SEO. Należy zawsze unikać indeksowania filtrów, sortowania i nawigacji warstwowej w stanie „surowym”. Możesz także użyć warstwowych rozszerzeń nawigacji, które zamienią Twoje przefiltrowane i posortowane strony w odpowiednio zoptymalizowane strony docelowe.

Typowe problemy z rozszerzeniami i rozwiązania

Jeśli używasz dowolnego rozszerzenia dla wersji Magento 2, sprawdź następujące problemy i poprawki:

Kompatybilność z wersjami Magento

Zanim pobierzesz którekolwiek z naszych rozszerzeń Magento 2, sprawdź, czy jest ono zgodne z aktualnie używaną wersją Magento. Na przykład wiele rozszerzeń stworzonych dla wersji M 2.1 może nie działać w wersji 2.0.

Kroki instalacji

Postępuj zgodnie ze wszystkimi krokami podanymi w instrukcji instalacji

Najnowsze wersje rozszerzeń Magento 2

Jeśli chcesz użyć któregokolwiek z rozszerzeń, pobierz najnowszą wersję tego rozszerzenia, aby uzyskać lepsze funkcje.

Czyszczenie statycznej pamięci podręcznej

Po zainstalowaniu rozszerzenia nie zapomnij wyczyścić statycznej pamięci podręcznej przed faktycznym użyciem rozszerzenia w swoim sklepie. Możesz to zrobić przez: System > Zarządzanie pamięcią podręczną > Opróżnij pamięć podręczną plików statycznych.

Pamięć podręczna zawartości statycznej

Po wprowadzeniu jakichkolwiek zmian w ustawieniach lub rozszerzeniu upewnij się, że wyczyściłeś statyczną pamięć podręczną zawartości. Dzięki temu interfejs będzie działał na nowych ustawieniach, a nie na starych plikach CSS.

Problemy z sesjami administracyjnymi

Aby rozwiązać problem z sesjami administracyjnymi, spróbuj się wylogować, a następnie ponownie zalogować do panelu administracyjnego.

Funkcjonalności

Zanim pobierzesz, zainstalujesz i zastosujesz rozszerzenie w swoim sklepie, dokładnie sprawdź funkcjonalności, ponieważ może kolidować z funkcjonalnościami istniejącego rozszerzenia w sklepie.

Problem z instalacją i rozwiązanie

Właściwe miejsce do kopiowania rozszerzeń

Aby rozszerzenia działały poprawnie, należy je skopiować do odpowiednich folderów. Na przykład rozszerzenie MConnect Media znajdzie się pod: app/code/Mconnect/MODULE_NAME

Wymagania systemowe

Zanim uruchomisz Magento 2, upewnij się, że masz wszystkie wymagania systemowe.

Wspólna procedura badania problemu Magento 2

  • Sprawdź katalog ./var/log lub swoją instalację Magento 2 — poszukaj błędów lub wyjątków w logach, szczególnie w log i system.log
  • Jeśli podczas otwierania strony pojawi się komunikat „Wystąpił błąd podczas przetwarzania twojego żądania”, weź identyfikator raportu z tej wiadomości i sprawdź katalog ./var/report: będzie tam plik o tej samej nazwie.
  • Może wystąpić problem z uprawnieniami do plików: sprawdź właściciela plików w katalogu sklepu Magento 2 i jego uprawnienia. Użyj poleceń chown (zmiana właściciela) i chmod (zmiana trybu) UNIX, aby odpowiednio je zaktualizować.
  • Sprawdź logi serwera WWW. Np. dla Apache to /var/log/apache2 lub /var/log/httpd, folder zależy od twojego systemu.
  • Wyczyść pliki pamięci podręcznej Magento 2 (jeśli pamięć podręczna jest włączona), czasami pomaga:

./var/cache
./var/page_cache
./zmienna/generacja

  • Przełącz sklep w tryb deweloperski: otwórz plik .htaccess w katalogu głównym Magento i włącz SetEnv MAGE_MODE „developer” lub użyj polecenia CLI: php bin/magento deploy:mode:set developer
  • W tym trybie może wyświetlać więcej informacji technicznych (błąd).
  • Włącz raportowanie błędów PHP w pliku ini:

ini_set('display_startup_errors',1);
ini_set('display_errors',1);
raportowanie_błędów(-1);

Problemy z interfejsem

  • Sprawdź konsolę przeglądarki pod kątem błędów (w Chrome: Narzędzia programistyczne / Konsola).
  • Włącz podpowiedzi do strony szablonu Magento 2: w panelu administracyjnym otwórz sekcję: Sklepy / Ustawienia / Konfiguracja / Zaawansowane / Deweloper / Debugowanie / „Włączone wskazówki dotyczące ścieżki szablonu dla Storefront”

Masz jeszcze jakieś pytania? Skontaktuj się z naszymi programistami Magento, aby uzyskać dalszą pomoc.