NASZA OFERTA
co robimy ?
Od momentu założenia w 2004 roku, rozwija się bardzo dynamicznie. Dzięki ciągłemu rozszerzaniu świadczonych przez nas usług, stale powiększamy grupę zadowolonych klientów. To co przekonało naszych klientów to nasza elastyczność i uwzględnianie ich indywidualnych potrzeb.
PORTFOLIO
Nasze prace
Profesjonalne Kodowanie Stron Internetowych. W erze cyfrowej, posiadanie atrakcyjnej, funkcjonalnej i responsywnej strony internetowej to klucz do sukcesu każdej firmy. Nasz zespół ekspertów jest tutaj, aby zapewnić Ci najwyższą jakość usług w zakresie tworzenia stron internetowych.
Indywidualne Podejście:
Każdy kodowany projekt traktujemy indywidualnie, dostosowując rozwiązania do potrzeb i oczekiwań klienta. Tworzymy strony internetowe, które odzwierciedlają charakter Twojej marki i spełniają Twoje cele biznesowe.
Responsywność:
Wszystkie kodowane strony przez nas – zakodowane są responsywne, co oznacza, że wyglądają i działają doskonale na każdym urządzeniu – od komputerów stacjonarnych po smartfony i tablety.

Nowoczesne Technologie:
Korzystamy z najnowszych technologii i standardów kodowania, takich jak HTML5, CSS3, JavaScript, Bootstrap, jQuery, a także popularnych systemów zarządzania treścią (CMS) jak WordPress, CMSMS czy PrestaShop.
Optymalizacja SEO:
Dbamy o to, aby Twoja nowo zakodowana strona internetowa była przyjazna dla wyszukiwarek, co zwiększa jej widoczność i pomaga w osiągnięciu lepszych wyników w rankingu Google.
Szybkość i Wydajność:
Zoptymalizujemy Twoją stronę pod kątem szybkości ładowania, co jest kluczowe dla użytkowników i wpływa na lepsze pozycjonowanie w wyszukiwarkach.
Bezpieczeństwo:
Implementujemy najnowsze rozwiązania w zakresie bezpieczeństwa, aby Twoja strona była chroniona przed zagrożeniami i atakami.
Wsparcie Techniczne:
Oferujemy pełne wsparcie techniczne po zakończeniu projektu, abyś mógł bez obaw korzystać z nowej strony.
W trakcie kodowania możemy znacznie zwiększyć interaktywność i funkcjonalność naszych stron internetowych, wdrażając różnorodne skrypty JavaScript. Przykładowo, możemy dodać animacje, które ożywią naszą witrynę, przyciągając uwagę użytkowników i poprawiając ich doświadczenia. Możliwości są nieograniczone – od prostych animacji przycisków, które reagują na najechanie myszką, po bardziej zaawansowane efekty, takie jak przewijane galerie obrazów czy dynamiczne zmiany kolorów tła. Ponadto, JavaScript pozwala nam na implementację praktycznych funkcjonalności, takich jak kalkulatory, które umożliwiają użytkownikom wykonywanie obliczeń bez konieczności opuszczania strony. Dzięki takim interaktywnym elementom, możemy tworzyć bardziej angażujące i użyteczne aplikacje webowe, które lepiej odpowiadają na potrzeby użytkowników.
Przesuń suwak, aby odkryć napis „kodowanie stron”.
Powyżej znajduje się przykład wykorzystania JavaScript który został użyty przy kodowaniu strony.
Przy pomocy tej technologii możemy zaprojektować kalkulatory wycen które będą liczyły w czasie rzeczywistym.
Jeśli podjedziesz na początek strony do zakodowania napisu "Kodowanie Stron WWW" efekt pisania na maszynie został
Doświadczenie: Nasz zespół składa się z doświadczonych programistów, którzy zrealizowali już wiele udanych projektów.
Jakość: Stawiamy na jakość, dlatego każdy projekt jest przez nas dokładnie testowany przed przekazaniem go klientowi.
Terminowość: Szanujemy Twój czas i zawsze dotrzymujemy ustalonych terminów realizacji.
Jak skorzystać z naszej oferty?
Skontaktuj się z nami za pomocą formularza kontaktowego na naszej stronie lub napisz bezpośrednio na nasz adres e-mail. Chętnie umówimy się na bezpłatną konsultację, podczas której omówimy Twoje potrzeby i przedstawimy szczegółową ofertę.
Nie czekaj! Zainwestuj w profesjonalną stronę internetową, która przyciągnie nowych klientów i zwiększy Twoją obecność w sieci.
Jeśli masz możliwość zatrzymania swojego sklepu na 1-3 godziny, migracja jest dość prosta. Wiele poradników opisuje, jak to zrobić: skopiuj pliki i bazę na nowy serwer, a następnie oddeleguj domenę. Jednak w tym wpisie skupimy się na przeprowadzeniu migracji w pełnej integralności danych w możliwie jak najkrótszym czasie (najlepiej w czasie rzeczywistym).
Sklep generuje zamówienia średnio co kilka minut, więc każda minuta źle zaplanowanej migracji to potencjalna strata dla klienta. Nie możemy sobie pozwolić na najmniejsze pomyłki. Środowisko docelowe zostało zweryfikowane i przetestowane. Wszystko działa poprawnie – mamy kopię odwzorowaną i wykonane zamówienia testowe. Pozostało tylko przenieść dane.

IP na firewallu jest przepuszczone do bazy, dostęp jest – możemy zaczynać.
1. Zatrzymanie sklepu
Zamykamy sklep, aby zatrzymać nowe zamówienia i zminimalizować możliwość utraty danych podczas migracji.
mysqldump -u user -p database_name > backup.sqlSkopiuj plik backupu na nowy serwer:
scp backup.sql user@newserver:/path/to/destinationOdtwórz bazę na nowym serwerze:
mysql -u user -p new_database_name < /path/to/destination/backup.sql2. Modyfikacja konfiguracji bazy danych Na starym serwerze edytuj plik konfiguracyjny PrestaShop, aby odwoływał się do nowego serwera bazy danych.
Znajdź plik settings.inc.php w folderze /config i zmień ustawienia bazy danych:
define('_DB_SERVER_', 'new_database_server_ip');
define('_DB_NAME_', 'new_database_name');
define('_DB_USER_', 'new_database_user');
define('_DB_PASSWD_', 'new_database_password');3. Przegrywanie plików W tej chwili migracja plików nie ma znaczenia, czy trwa 3 czy 5 godzin, ponieważ wszystkie dane są już zapisywane na nowym serwerze bazy danych.
rsync -avz /path/to/prestashop/ user@newserver:/path/to/destination/4. Oddelegowanie rekordu A
Aby przyspieszyć proces migracji, zaktualizuj rekord A DNS, aby wskazywał na nowy serwer.
Upewnij się, że rekord TTL jest ustawiony na jak najkrótszy czas (np. 5 minut) przed migracją, aby propagacja była jak najszybsza.
5. Zmiana delegacji DNS
Po zakończeniu migracji plików i upewnieniu się, że wszystko działa poprawnie na nowym serwerze, zmień delegację DNS.
W panelu zarządzania domeną zaktualizuj wpisy DNS, aby wskazywały na nowy serwer. Propagacja może zająć od kilku minut do 48 godzin, ale zazwyczaj jest szybsza, jeśli TTL był niski.
Migracja PrestaShop na nowy serwer przy minimalnych przestojach wymaga dokładnego planowania i testowania. Kluczowe jest wykonanie backupu bazy danych, odtworzenie jej na nowym serwerze, zmiana konfiguracji, a następnie przegranie plików i aktualizacja DNS. Postępując zgodnie z powyższymi krokami, możesz zminimalizować czas przestoju i zapewnić ciągłość działania sklepu.
Aby przyspieszyć proces migracji i zminimalizować przestoje, warto zmienić wartość TTL (Time To Live) rekordu A DNS przed rozpoczęciem migracji. TTL określa, jak długo informacje o rekordzie DNS są przechowywane w pamięci podręcznej serwerów DNS. Skrócenie tej wartości sprawia, że serwery DNS częściej odświeżają informacje, co przyspiesza propagację zmian.
Konwersje są kluczowym wskaźnikiem efektywności działań marketingowych w potężnym e-commerce jak i na zwykłej wizytówce WWW. Jednak ich właściwa implementacja i interpretacja może być wyzwaniem, szczególnie w kontekście specyficznym dla polskiego rynku. Ten wpis postara pomóc Ci zrozumieć, czym są konwersje, jak je mierzyć i interpretować, aby skutecznie zarządzać swoim sklepem internetowym.
Typowe konwersje:
Mniej typowe konwersje:
I teraz pomyśl, że chcesz wiedzieć ile osób zadzwoniło ze strony klikając w link ze strony:
<a href="tel:+48123456789">tel: +48 123 456 789</a>Zmień na:
<a href="tel:+48123456789" onclick="trackCall()">tel: +48 123 456 789</a>
<script>
function tracklClick() {
gtag('event', 'click', {
'event_category': 'kontakt',
'event_action': 'klikniecie z www',
'event_label': '+48 123 456 789'
});
}
</script>I odczytaj ilość kliknięć w Analitikcs

Na podstawie powyższego przykładu możesz mierzyć wszystko na stronie WWW dodanie produktu do koszyka. -> ilość koszyków zrealizowanych
Dodaj to raportu urządzenia i zweryfikuj gdzie są błędy na stronie – popraw i wyciśnij jak najwięcej (tak działamy)
Potrzebujesz pomocy przy wdrożeniu GA4 zapraszamy do współpracy.
Twoje pomysły zasługują na perfekcyjną realizację. Oferujemy usługę cięcia projektów graficznych do WordPress, która zapewni, że Twoje wizje staną się rzeczywistością w sieci. Nasz zespół specjalistów z dużym doświadczeniem przekształca Twoje pliki PSD, Sketch, Figma czy Adobe XD w w pełni funkcjonalne, responsywne strony internetowe oparte na WordPress.



Skontaktuj się z nami już dziś, aby dowiedzieć się, jak możemy pomóc Ci w realizacji Twojego projektu. Wspólnie stworzymy stronę internetową, która wyróżni się na tle konkurencji i zachwyci Twoich użytkowników.
Rozwiązanie jest proste i powinno działać w większości scenariuszy
Nasz dział SEO zidentyfikował potrzebę zamieszczenia obszernych opisów w kategoriach produktów na stronie internetowej. W celu poprawy optymalizacji pod kątem wyszukiwarek (SEO). Dłuższy opis jest niezbędny, aby zawrzeć więcej słów kluczowych i dostarczyć pełniejszych informacji użytkownikom oraz robotom wyszukiwarek. Aby jednak nie przytłoczyć odwiedzających naszą stronę zbyt długim tekstem umieszczonym od razu na górze strony, zdecydowaliśmy się na przeniesienie części tego opisu na dół strony.
Kod jQuery poniżej został stworzony, aby automatycznie przenieść elementy z klasą .bottomtext na dół sekcji z identyfikatorem #main po załadowaniu strony. Dzięki temu, dłuższy opis SEO jest wciąż obecny na stronie i indeksowany przez wyszukiwarki, ale nie dominuje nad główną zawartością strony.
$(document).ready(() => {
$( ".bottomtext" ).appendTo( "#main" );
});Teraz wystarczy w standardowym polu kategorii dodać element o class równej bottomtext

Chętnie zajmiemy się opieką, dostosowując nasze usługi do indywidualnych potrzeb i oczekiwań. Skontaktuj się z nami już dziś, aby dowiedzieć się więcej i umówić na bezpłatną konsultację. Razem stworzymy plan opieki Prestashop. Zachęcamy do sprawdzenia cennika Prestashop
Wiesz po co to robisz przejdź od razu do rozwiązania:
– włączanie debug Prestashop za pomocą panelu administracyjnego,
– włączanie debug Prestashop za pomocą pliku defines.inc.php
Napotkałeś błąd 500 na swojej stronie PrestaShop?
Błąd 500 (czasem wyświetlany jako biała strona), znany również jako „Internal Server Error”, jest powszechnym problemem w wielu aplikacjach internetowych, w tym w sklepach PrestaShop. Oznacza on, że serwer napotkał niespodziewaną sytuację, której nie mógł obsłużyć. Przyczyny mogą być różne, ale nie martw się! Oferujemy Ci prosty przewodnik, jak szybko zdiagnozować i potencjalnie rozwiązać problem.
Włączanie trybu debug w PrestaShop jest pomocne w trakcie procesu rozwijania, testowania i debugowania sklepu internetowego. Tryb debug pozwala uzyskać szczegółowe informacje o błędach, ostrzeżeniach i innego rodzaju komunikatach, co ułatwia zlokalizowanie i naprawienie problemów w sklepie. Oto kilka powodów, dla których warto włączyć tryb debug w PrestaShop:
Tryb debug w PrestaShop wyświetla dokładne informacje o błędach, w tym plik i numer linii, gdzie wystąpił problem. To ułatwia programistom zlokalizowanie i naprawienie błędów w kodzie sklepu.
Po włączeniu trybu debug otrzymasz ostrzeżenia i komunikaty dotyczące różnych aspektów działania sklepu. Dzięki temu możesz dowiedzieć się o potencjalnych problemach jeszcze przed tym, nim staną się one krytyczne.
Tryb debug pozwala śledzić kolejność wywołań funkcji, co jest przydatne do analizy procesów i zrozumienia, co dzieje się w trakcie różnych operacji na stronie.
Możesz monitorować wydajność strony, sprawdzając, które elementy sklepu zajmują najwięcej czasu ładowania. To może pomóc w optymalizacji kodu i zwiększeniu szybkości działania sklepu.
Podczas prac nad nowymi funkcjonalnościami lub modyfikacjami w sklepie, tryb debug ułatwia monitorowanie zachowania systemu, co przyspiesza proces rozwijania i testowania.

Aby włączyć tryb debug mode w PrestaShop, wykonaj poniższe kroki:
Zaloguj się do panelu administracyjnego PrestaShop.
Przejdź do zakładki „Zaawansowane Parametry” (Advanced Parameters).
Kliknij na zakładkę „Wydajność” (Performance).
W sekcji „Debugowanie” (Debug Mode) ustaw wartość na „Tak”.
Kliknij „Zapisz”.
Istnieją sytuacje, że włączenie debugowania jest tylko możliwe przy pomocy edycji pliku (za pośrednictwem dostępu do FTP) – np. panel administracyjny PrestaShop nie działa i nie ma możliwości wykonania czynności opisanej w pkt 1.
Aby włączyć tryb debugowania w PrestaShop 1.7, musisz zmodyfikować konfigurację w pliku defines.inc.php, który znajduje się w folderze config. Poniżej znajdziesz krok po kroku, jak to zrobić:
Krok 1: Dostęp do plików serwera
Najpierw musisz uzyskać dostęp do plików serwera, na którym zainstalowano Twój sklep PrestaShop. Możesz to zrobić za pomocą klienta FTP (takiego jak FileZilla) lub bezpośrednio przez menedżera plików w panelu administracyjnym hostingu.
Krok 2: Edycja pliku defines.inc.php
define('_PS_MODE_DEV_', false);
4. Zmień false na true, aby włączyć tryb debugowania:
define('PS_MODE_DEV', true);
Krok 3: Zapisz zmiany
Po dokonaniu zmian, zapisz plik i zamknij edytor. Upewnij się, że plik został poprawnie przesłany z powrotem na serwer, jeśli korzystałeś z klienta FTP.
Krok 4: Testowanie
Po włączeniu trybu debugowania, wszelkie błędy, ostrzeżenia i informacje diagnostyczne będą wyświetlane bezpośrednio na Twojej stronie. Odwiedź stronę, która wcześniej sprawiała problemy, aby sprawdzić, czy są teraz wyświetlane dodatkowe informacje o błędach.
Po włączeniu trybu debug, pamiętaj, aby go wyłączyć po zakończeniu prac deweloperskich, ponieważ informacje debugowania mogą zawierać poufne dane, które nie powinny być dostępne publicznie na stronie produkcyjnej sklepu.
Nie chcesz martwić się o błędy w swoim sklepie zleć nam opiekę PrestaShop i śpij spokojnie.
Oferujemy kompleksową opiekę nad sklepami opartymi na platformie PrestaShop, aby zapewnić Ci spokój i sukces w prowadzeniu Twojego e-sklepu. Nasza oferta opieki nad sklepami PrestaShop obejmuje szeroki zakres usług, które dostosowujemy do Twoich indywidualnych potrzeb. Oto, co możemy dla Ciebie zrobić:
Monitorowanie sklepu pod kątem ewentualnych problemów i szybka reakcja na wszelkie zagrożenia.
Personalizacja wyglądu i funkcjonalności Twojego sklepu PrestaShop. Dodawanie nowych modułów i rozszerzeń, aby rozwinąć możliwości sklepu.
Poprawa wydajności i szybkości działania sklepu. Optymalizacja stron produktów, aby zwiększyć konwersje.
Monitorowanie bezpieczeństwa sklepu i jego ochrona przed atakami.
Pomoc techniczna dla Ciebie i Twoich klientów. Rozwiązywanie problemów związanych z działaniem sklepu.
Optymalizacja SEO, aby zwiększyć widoczność Twojego sklepu w wynikach wyszukiwania. Wspieranie działań marketingowych, takie jak kampanie reklamowe i e-mail marketing.
Szkolenie Ciebie i Twojego zespołu w obszarze zarządzania sklepem PrestaShop. Stałe wsparcie i konsultacje w zakresie e-commerce.

Niezależnie od tego, czy jesteś właścicielem małego sklepu internetowego czy dużego przedsiębiorstwa, nasza opieka nad sklepami PrestaShop pomoże Ci osiągnąć sukces online. Skontaktuj się z nami, aby omówić Twoje potrzeby i dostosować naszą ofertę do Twoich indywidualnych wymagań. Zaufaj nam i ciesz się rosnącym zyskiem ze swojego sklepu PrestaShop.
PrestaShop po instalacji ma ustawione domyślnie obliczanie podatku VAT dla pojedynczego produktu.
W przypadku Polski przy zamawianiu większej liczby produktów tego samego typu może powodować błędy w obliczaniu VAT.
Załóżmy, że nasz produkt kosztuje 46,20 zł netto.
W momencie jeśli dodamy dodamy do niego VAT (23%) wartość produktu wyniesie 56,83zł brutto.
Jeśli zamawiamy jeden produkt błędu nie ma natomiast jeśli chcemy zamówić 30sztuk. PrestaShop obliczoną wartość brutto przemnoży przez 30 co da nam 1704,90 brutto

Niestety nie jest to zgodne z polskim systemem księgowym. Np. subiekt mnoży najpierw cenę netto x ilość jednostek a na końcu oblicza VAT i w tym przypadku wartość brutto naszego koszyka powinna wynosić : 46,20*30szt=1386zł netto *1,23 (VAT23%) = 1704,78

Różnica w VAT w zależności od sposobu liczenia wynosi 12groszy. Z księgowego punktu widzenia mamy za dużą wpłatę faktura wystawiona na mniejszą kwotę.
Żeby ujednolicić sposób obliczania VAT aby w PrestaShop był taki sam jak w Subiekt należy przejść do Preferencje -> ogólne i zmienić sposób zaokrąglania na zaokrąglanie w linii.

Po tej zmianie wartość brutto w PrestaShop jest taka sama jak w Subiekt.

Tworzenie wpisów w WordPress używając Gutenberga.
Powyższy tekst to nagłówek, który można wybrać tutaj:

Inne rodzaje tekstu to akapit, który wygląda tak jak ten tekst. Pozostałe rodzaje to:
Lista:
Cytat:
To jest cytat.
Kod:
int i=0;
i++;
System.out.println(i);Wstępnie sformatowany:
Dodaje tekst, który uwzględnia odstępy i tabulatory, a także pozwala na nadanie wyglądu. Ten tekst jest wstępnie sformatowany.
Cytat wyróżniony:
Tak wygląda cytat wyróżniony.
Anonim
Tabela:
| Kolumna 1 | Kolumna 2 | Kolumna 3 |
| Wiersz 1 | Wiersz 1 | Wiersz 1 |
Wiersz:
Oto wiersz, prosty i krótki jak sen, Słowa splatają się tu w rytmiczną grę.
Media można wybrać tutaj:

Zdjęcie powyżej to obrazek.
Galeria:



Plik dźwiękowy:
Dodawanie tekstu i mediów jest proste w obsłudze. Po wyborze, pojawia się pole:


Po przesłaniu lub napisaniu tekstu tworzy się nasz wybrany tekst lub media.
Poniższy film prezentuje działanie skryptu który uniemożliwia wpisanie niepoprawnych znaków do pola NIP w PrestaShop.
PrestaShop w standardzie niestety nie ma walidacji pola NIP. Często klienci w tym polu wpisują uwagi do zamówienia a w kolejnym kroku jeśli mamy integrację z programami księgowymi generują się błędy przy synchronizacji spowodowane niedozwolonymi znakami w polu NIP.
W prosty sposób możemy nadać maskę do do pola NIP w javascript która będzie walidować rzeczy wpisywane do pola NIP w czasie rzeczywistym. W przypadku wykrycia niepoprawnego znaku zapobiegnie wpisanie poprzez przywrócenie ostatniej poprawnej wartości.

Założenia: Funkcja ma pozwalać jedynie na wprowadzanie cyfr. Format w polu NIP ma być zachowany: 3 cyfry-3 cyfry- 2 cyfry- 2 cyfry. Myślniki mają wprowadzać się automatycznie. Maksymalna długość wartości w polu to 13, wszystko ponad ma być automatycznie usuwane.
2. Działanie funkcji ‘keyup’:
Jeżeli wystąpiło zdarzenie keyup, czyli podniesienie klawisza, to wykonuje się sprawdzanie ostatnio wprowadzonego znaku. Pierwsze sprawdzenie warunkowe odpowiada za przypadek, jeśli zostało wciśnięte backspace. W nim następnie sprawdzane jest czy został usunięty myślnik. Jeśli tak to zostają usunięte dwa ostatnie znaki. Znak przed myślnikiem również zostaje usunięty, ponieważ regex nie pozwala na wprowadzanie myślników przez użytkownika, więc jeśli użytkownik przez przypadek usunąłby myślnik, nie miałby możliwości wprowadzenia go z powrotem. W przeciwnym razie usunięty zostaje tylko jeden znak. Na koniec wartość beforeValue zostaje nadpisana, aby przechowywała wartość po usunięciu znaku/znaków.
Jeśli wprowadzony znak nie jest cyfrą to do wartości pola nip zostaje przypisana wartość beforeValue. Funkcja pozwala na wprowadzanie tylko cyfr, wszystkie inne znaki zostają automatycznie usunięte.
Jeżeli żadne z powyższych przypadków nie zostanie spełnionych to najpierw funkcja sprawdzi czy jest to miejsce, w którym powinien znajdować się myślnik. Jeśli tak to dopisze myślnik do wartości pola nip, co sprawia, że myślniki wprowadzają się automatycznie. Na koniec wartość pola beforeValue zostanie nadpisana.
Po sprawdzeniu wprowadzonego znaku, funkcja sprawdza czy wprowadzona wartość nie jest dłuższa od maksymalnej długości. Jeśli jest, to funkcja usuwa dodatkowo wprowadzony znak i nadpisuje wartość beforeValue.
3. Działanie funkcji ‘blur’:
Jeśli wystąpiło zdarzenie ‘blur’, czyli wyjście poza pole, to funkcja sprawdza czy znajduje się w polu jakiś znak i czy wartość jest krótsza od maksymalnej długości. Jeśli jest to wypisuje alarm o niepoprawnej wartości pola nip. Zabezpiecza to przed przypadkowym wpisaniu cyfry w pole nip.
let beforeValue="";
$(function() {
var nip = document.getElementsByName('vat_number');
$(nip).on('keyup',function(event){
var lastkey = event.keyCode;
var lastKeyNB = event.key;
var nipLength = nip[0].value.length;
const regexLastKey = /[^\d]/i;
const regexBackspace = /[\b]/i;
var lastkeyChar = String.fromCharCode(lastkey);
if(regexBackspace.test(lastkeyChar)){
if(nipLength==3 || nipLength==7 || nipLength==10){
nip[0].value = nip[0].value.substr(0,nip[0].value.length-1);
} else{
nip[0].value = nip[0].value.substr(0,nip[0].value.length);
}
beforeValue = nip[0].value;
} else if(regexLastKey.test(lastKeyNB)){
nip[0].value=beforeValue;
} else{
if(nipLength==3 || nipLength==7 || nipLength==10){
nip[0].value += "-";
}
beforeValue=nip[0].value;
}
if(nip[0].value.length>13){
nip[0].value = nip[0].value.substr(0,13);
beforeValue = nip[0].value;
}
});
$(nip).on('blur',function(event){
if(nip[0].value.length>0 && nip[0].value.length<13){
alert("Niepoprawny NIP");
}
});
});
Potrzebujesz wsparcia przy Twoim PrestaShop przejdź od cennik PrestaShop