Importer
# Czas wykonania zadania
Importer wykonuje złożone zadania, które mogą zająć dużo czasu. Sugeruje się, żeby w razie problemów ze zbyt wczesnym zakończeniem procesów, na czas importu zwiększyć czas wykonania pojedynczego zadania w pliku konfiguracyjnym config/queue.php:
'database' => [
'retry_after' => 60 * 30,
Przykładowo powyższe ustawienie pozwala wykonać pojedyncze zadanie w czasie 30 minut.
# Ścieżka do PHP
Importer bardziej skomplikowane zadania przydziela do jobów. Wykonaniem jobów zajmują się asynchroniczne workery uruchamiane z poziomu PHP CLI. Ścieżkę do pliku wykonawczego PHP CLI można zmienić z poziomu pliku config/idir.php, zmieniając wartość:
'import' => [
'php_path' => 'php',
# Ilość rekordów do przetworzenia na zadanie
W przypadku problemów ze zbyt dużym payloadem w utworzonych jobach, można zmienić domyślną ilość rekordów z poziomu pliku config/idir.php:
'import' => [
'job_limit' => 1000
# Przekierowanie starych adresów na nowe
Importer importuje dane z zachowaniem identycznego identyfikatora primary ID. Dzięki temu możliwe jest stworzenie przekierowań starych adresów kategorii i wpisów na nowe przy udziale reguł w public/.htaccess - na przykład:
# SEOKatalog import redirect RewriteRule ^([-_+!~,;*'()$a-zA-Z0-9]+)/([-_+!~,;*'()$a-zA-Z0-9]+),p,([0-9]+)/strona,([0-9]+)/? /import/categories/$3/dirs?page=$4 [L,R=301] RewriteRule ^([-_+!~,;*'()$a-zA-Z0-9]+)/([-_+!~,;*'()$a-zA-Z0-9]+),p,([0-9]+)/? /import/categories/$3/dirs [L,R=301] RewriteRule ^([-_+!~,;*'()$a-zA-Z0-9]+)/([-_+!~,;*'()$a-zA-Z0-9]+),s,([0-9]+)/ /import/dirs/$3 [L,R=301] RewriteCond %{QUERY_STRING} ^click=([0-9]+)$ RewriteRule ^ /import/
dirs/
%1? [L,R=301]
Specjalnie utworzone kontrolery znajdujące się w lokalizacji:
N1ebieski\IDir\Http\Controllers\Web\Import
zajmą się resztą i przekierują stare adresy na odpowiadające im routy z identyfikatorem typu slug.