Poniżej znajduje się lista wymagań dotyczących Quick.Cart'a, procedura jego instalacji na serwerze, a także instrukcja obsługi.
Wymagania
Aby skrypt działał poprawnie na Twoim serwerze, powinien on spełniać następujące wymagania:
- obsługa skryptów PHP (wersja PHP 5.2.0 lub wyższa - jak sprawdzić wersję php mojego serwera?).
- włączona funkcja mail() potrzebna do wysyłania e-maili. Jeśli wysyłanie nie będzie działo lub funkcja mail() będzie wyłączona to wyczyść pole "Email administratora" w konfiguracji.
- włączona opcja allow_url_fopen, potrzebna do poprawnego działania funkcji "Sprawdź poprawki" i "Dodatki".
Podstawowe wymagania do poprawnego dodawania zdjęć:
- zainstalowana biblioteka gd2 (jak sprawdzić czy mam bibliotekę GD?),
- wgrywane zdjęcia nie powinny być szersze lub dłuższe niż 2000px.
Wgrywanie skryptu na serwer
Pobrany skrypt rozpakuj i wykonaj jedną z dwóch opcji:
- Uruchom skrypt na Twoim komputerze używając do tego serwera XAMPP, WAMP lub EasyPHP. Zalecane do testowania skryptu i etapu przygotowywania strony.
Nie wiesz jak stworzyć własny serwer lokalny? Przeczytaj instrukcję instalacji serwera lokalnego.
- Uruchom skrypt na serwerze zewnętrznym np. kei.pl, home.pl, nazwa.pl, itp. Zalecane do testowania skryptu i wgrania gotowej strony.
- ustaw w programie obsługującym połączenie FTP, opcję typ transferu na binarny,
- nadaj prawa dostępu 777 (inaczej: rwxrwxrwx) dla katalogów:
- "database" - oraz dla wszystkich plików i podkatalogów w tym katalogu,
- "files" - oraz dla wszystkich plików i podkatalogów w tym katalogu.
Dla większego bezpieczeństwa, zastosuj prawa 700 dla wymienionych wyżej katalogów i podkatalogów oraz 600 dla plików i sprawdź czy skrypt będzie działał poprawnie. W przeciwnym razie, przywróć poprzednie prawa dostępu. Przeczytaj instrukcję nadawania praw plikom.
Po skopiowaniu
Jeśli Twój serwer spełnia powyższe wymagania i wgrałeś na niego wszystkie pliki znajdujące się w ściągniętej paczce:
- pod adresem Twojego serwera powinna wyświetlać się już strona główna,
- jeśli za adresem strony głównej dopiszesz admin.php (np. www.twoj-adres.pl/admin.php), znajdziesz się na stronie logowania do administracji Twojego Quick.Cart'a,
- domyślnie dane do zalogowania się do panelu administracyjnego:
- login: admin
- hasło: admin
- po uruchomieniu strony koniecznie zmień nazwę pliku "admin.php" na inny dla przykładu: "5857d6.php". Po tej zmianie panel administracyjny będzie wywoływany z przeglądarki pod adresem: www.twoj-adres.pl/5857d6.php. Nie udostępniaj tego adresu osobom trzecim, by znacznie utrudnić próbę włamania na Twoją stronę.
- w wersji v6.2 i wyższej, edytuj plik "database/config/general.php" i poszukaj zmiennej $config['admin_file'], a następnie zmień wartość "admin.php" na nową nazwę pliku czyli w tym przypadku "5857d6.php".
Zapoznaj się także z działem "Kwestie bezpieczeństwa".
Instrukcja obsługi - pierwsze kroki
Skorzystaj ze specjalnie przygotowanej instrukcji obsługi z której dowiesz się jak krok po kroku zarządzać swoją stroną internetową.
Włączanie i wyłączanie opcji
Wyłączanie dodatków
Niektóre opcje w edycji płatnej są możliwe do wyłączenia. Wyłączanie nie używanych opcji ma istotne zalety:
- przyśpiesza działanie skryptu
- formularze stają się czytelniejsze ponieważ nie posiadają zbędnych opcji
- daje możliwość zablokowania klientom zarządzania opcjami, do których nie powinni mieć dostępu. Przykładowo webmaster zainstaluje odpowiednie dodatki i nie chce by później klient wgrywał kolejne ze względów bezpieczeństwa i wyglądu strony.
Funkcjonalności mające możliwość włączenia i wyłączenia skonfigurowane są w pliku "database/config/general.php" i zapisane są w tablicy $config['plugins']. Przykładowo by wyłączyć instalator dodatków należy zmienić:
$config['plugins']['plugins'] = true;na
$config['plugins']['plugins'] = false;
Ukrywanie zaawansowanych opcji
dostępne od wersji v6.3Dodatkowo w edycji płatnej istnieje możliwość ukrycia / zablokowania w panelu administracyjnym wybranych opcji, zmiana których może spowodować niepoprawne wyświetlanie się strony lub nawet jej uszkodzenie.
Aby ukryć wybrane pole/opcję/zakładkę, wybierz odpowiednią zmienną z poniższej listy i wstaw ją do pliku "database/config/general.php" poniżej zmiennej
$config['hide_theme'] = true;
Aby ponownie przywrócić dane pole/opcję/zakładkę należy odpowiednią linię usunąć lub zakomentować albo zmiennej nadać wartość null (zmiana wartości true na false lub jakąkolwiek inną nie przyniesie żądanego efektu).
Tryb deweloperski (developer mode)
Tryb deweloperski umożliwia webmasterowi włączenie wszystkich ukrytych opcji i funkcji wymienionych powyżej, dla wybranego IP. Przydatne zwłaszcza jeśli trzeba coś zmienić w panelu administracyjnym, a opcja wymagająca zmiany jest ukryta dla zwykłego użytkownika administracji.
Aby uruchomić tryb deweloperski, trzeba w pliku "database/config/general.php" wstawić zmienną:
$config['developer_mode_for_ip'] = '1.1.1.1'; // gdzie 1.1.1.1 to IP osoby, która ma mieć włączony tryb deweloperski
Wstępna konfiguracja
Instalacja dodatków
Na samym początku skorzystaj z menedżera dodatków w celu zainstalowania wymaganych opcji.
Uwaga! Nie warto instalować na zapas dodatków, które wydają się być w tej chwili zbędne, ale w przyszłości mogą się przydać. Zainstalowanie większej ilości opcji w stosunku do faktycznych potrzeb może wpłynąć negatywnie na wydajność skryptu, a także spowoduje, że administracja będzie mniej czytelna ze względu na większą ilość pól i opcji w formularzach.
Zmienne konfiguracyjne
W pliku "database/config/general.php" znajdują się niektóre zmienne konfiguracyjne, które nie są dostępne z panelu administracyjnym. Przed tworzeniem strony warto zastanowić się nad ustawieniem niektórych opcji. Będzie to miało wpływ na późniejsze funkcjonowanie skryptu, jego wydajność itp.
Zapoznaj się z najważniejszymi zmiennymi:
- $config['allowed_ips_admin_panel'] - dostępne od wersji v6.4 - zawierająca listę adresów IP z których można zalogować się do administracji. Aby dodać tą zmienną, należy edytować plik konfiguracyjny i wkleić kod:
$config['allowed_ips_admin_panel'] = Array( '1.1.1.1', '2.2.2.2' ); // 1.1.1.1 i 2.2.2.2 to adresy IP, które mają mieć możliwość logowania do administracji
Jeśli chcesz zdefiniować tylko jeden adres IP, zamień wartość zmiennej na Array( '1.1.1.1' ); Jeśli adresów IP ma być więcej niż dwa, dodaj po przecinku kolejny adres. - define( 'DEVELOPER_MODE', true ); - dostępne od wersji v6.5 - gdy ta opcja jest aktywna, skrypt wyświetla wszystkie możliwe błędy, które znajdują się w kodzie PHP i niepoprawne ustawienia praw do plików. Po opublikowaniu strony wyłącz tą opcje zmieniając ją na //define( 'DEVELOPER_MODE', true );
- $config['language_in_url'] - jeśli planujesz stworzyć stronę wielojęzyczną, to zalecamy ustawić tą zmienną na wartość true.
- $config['products_full_description_to_file'] - jeśli planujesz stworzyć sklep zawierający duże ilości produktów (np. 1000 i więcej), to zalecamy ustawić tą zmienną na wartość true. Opisy pełne będą zapisywały się w plikach w katalogu "database/products/" co znacznie przyśpieszy działanie skryptu, jednak kosztem braku możliwości wyszukiwania produktów po opisach pełnych. W edycji EXT możliwe jest włączenie wyszukiwania po opisach, które znajdują się w katalogu "database/products/" przez ustawienie true dla zmiennej $config['search_in_files']. W tym przypadku jednak będzie to znacznie obciążało procesor serwera. Dlatego w razie problemów z obciążeniem serwera konieczne będzie wyłączenie opcji wyszukiwania po opisach.
- $config['pages_full_description_to_file'] - jeśli planujesz stworzyć stronę zawierającą duże ilości tekstów (np. 200 i więcej stron oraz podstron), to zalecamy ustawić tą zmienną na wartość true. Opisy pełne będą zapisywały się w plikach w katalogu "database/pages/" co znacznie przyśpieszy działanie skryptu, jednak kosztem braku możliwości wyszukiwania stron po opisach. W edycji EXT możliwe jest włączenie wyszukiwania po opisach, które znajdują się w katalogu "database/pages/" przez ustawienie true dla zmiennej $config['search_in_files']. W tym przypadku jednak będzie to znacznie obciążało procesor serwera. Dlatego w razie problemów z obciążeniem serwera konieczne będzie wyłączenie opcji wyszukiwania po opisach.
- $config['images_sizes'] - ustal wielkości miniaturek, które będą się wyświetlały w listach i szczegółach stron i produktów. Domyślnie skrypt posiada 3 rozmiary miniaturek: 100, 150 i 200 (wartości wyrażone w pikselach (px)). Skrypt w czasie generowania miniaturek pomniejsza zdjęcie tak by jego szerszy bok otrzymał wskazaną wartość. Przykładowo zdjęcie o wymiarach 800x600 dla którego zaznaczono miniaturkę 100 będzie pomniejszone do rozmiarów 100x75.
- $config['thumbs_ratios'] - ustal dodatkowe opcje kadrowania zdjęć. Przykładowo jeśli chcesz dodać kadrowanie 3:2 (czyli stosunek krótszego boku do dłuższego wynosi 0.666) to dopisz do zmiennej: , '0.666' => '3:2'
- $config['products_default_image_size_list'] - ustal domyślną wielkość miniatury 1 dla produktów (domyślnie wyświetlana w liście)
- $config['products_default_image_size_details'] - ustal domyślną wielkość miniatury 2 dla produktów (domyślnie wyświetlana w szczegółach)
- $config['products_default_image_location'] - ustal domyslną lokalizację zdjęcia
- $config['pages_default_image_size_list'] - ustal domyślną wielkość miniatury 1 dla stron (domyślnie wyświetlana w liście)
- $config['pages_default_image_size_details'] - ustal domyślną wielkość miniatury 2 dla stron (domyślnie wyświetlana w szczegółach)
- $config['pages_default_image_location'] - ustal domyslną lokalizację zdjęcia
- $config['default_subpages_show'] - ustal domyślny sposób wyświetlania podstron
- $config['promoted_products_elements'] - dostępne od wersji v6.4 - ustal elementy produktu, które mają się wyświetlać dla promowanych produktów. Kolejność elementów jest dowolna. Więcej informacji w elementy dla stron i produktów »
- $config['default_boxes_product_elements'] - dostępne od wersji v6.4 - ustal domyślne elementy produktu, które mają się wyświetlać w boksie o typie "wyświetl produkt". Kolejność elementów jest dowolna. Więcej informacji w elementy dla stron i produktów »
- $config['default_boxes_page_elements'] - dostępne od wersji v6.4 - ustal domyślne elementy strony, które mają się wyświetlać w boksie o typie "wyświetl stronę". Kolejność elementów jest dowolna. Więcej informacji w elementy dla stron i produktów »
- $config['max_dimension_of_image'] – ta zmienna przechowuje maksymalny rozmiar dłuższego boku dodawanego zdjęcia. Jeśli jego rozmiar jest większy niż wartość tej tablicy, to następuje jego pomniejszenie do wartości tablicy.
- $config['time_diff'] - jeśli pomiędzy czasem lokalnym, a czasem na serwerze jest różnica to podaj ją w minutach. Przykładowo jeśli serwer pokazuje o 1 godzinę później to wpisz "-60".
- $config['date_format_admin_default'], $config['date_format_admin_orders'], $config['date_format_customer_orders'], $config['date_format_customer_comments'] - dostępne od wersji v6.2 - umożliwia zdefiniowanie formatu wyświetlanej daty w zależności od wartości zmiennej. Nazwa zmiennej precyzuje miejsce zastosowania jej przy wyświetlaniu daty. Format daty można zdefiniować w oparciu o parametry funkcji date().
- $config['image_preview_size'] - rozmiar większego boku podglądu zdjęcia w szczegółach produktu. Jeśli chcesz wyłączyć tą opcje to ustaw wartość null
- $config['max_product_quantity'] - maksymalna ilość danego produktu, który można zamówić w jednym zamówieniu
- $config['order_details_from_customer'] - gdy zmienna ustawiona jest na true to nadawcą emaila wysyłanego do administratora ze szczegółami zamówienia będzie klient
- $config['cache_bestsellers'] - jeśli zmienna ma wartość true to bestsellery będą zapisywane do pamięci podręcznej i odświeżane co 24h. Zmniejsza to obciążenie skryptu
- $config['show_vouchers_form'] - gdy wartość zmiennej jest ustawiona na true to pole do wpisywania kuponów rabatowych w koszyku będzie się wyświetlać
- $config['dir_*'] - w tablicy, której klucze zaczynają się na "dir_", przechowywane są informacje o katalogach, np.: bazy danych, czy plików. Przed uruchomieniem strony można zmienić ich nazwy w celu, np.: zabezpieczenia bazy danych przed intruzami.
- $config['style'] - zmienna przechowuje nazwę pliku styli css. Jesli chcesz opracować swoje style, to zmień wartość zmiennej.
- $config['gallery_columns'] - ilośc kolumn w wyświetlaniu zdjęć typu góra/dół lub podstron typu galeria zdjęć
- $config['related_columns'] - ilość kolumn w wyświetlaniu produktów powiązanych w szczegółach produktu
- $config['show_order_details_link'] - jeśli chcesz, by Twoi klienci po złożeniu zamówienia mieli podgląd do jego szczegółów przez prowadzący do niego specjalny link, to ustaw parametr na true
- $config['page_link_in_navigation_path'] - dostępne od wersji v6.3 - jeśli zmienna ma wartość false, nazwa bieżącej strony w ścieżce nawigacyjnej nie jest linkiem
- $config['change_language_to_polish'] - dostępne od wersji v6.3 - jeśli zmienna ma wartość true, język przeglądarki jest ustawiony na polski i język administracji nie został ustawiony przez administratora, wówczas język administracji zostanie automatycznie zmieniony na polski
- $config['hide_theme'] - dostępne od wersji v6.3 - ukrycie pola wyboru tematu strony. Wartość null przywraca pole.
- $config['hide_thumbnails_2'] - dostępne od wersji v6.3 - ukrycie pola wyboru rozmiaru mianitury 2. Wartość null przywraca pole.
- $config['display_lang_preview_link'] - dostępne od wersji v6.3 - jeśli wartość zmiennej ustawiona jest na true, wówczas link do podlądu strony znajdujący się obok nazwy strony w liście stron w administracji zawiera parametr językowy
- $config['display_homepage_name_title'] - dostępne od wersji v6.4 - wyświetlanie tytuły strony na stronie startowej
- $config['max_textarea_chars'] - dostępne od wersji v6.3 - ustal maksymalną ilość znaków przesyłanych przez pola typu "textarea" z formularzy
- $config['max_text_chars'] - dostępne od wersji v6.3 - maksymalna długość tekstu przesyłanego przez pola typu "text" z formularzy
- $config['allowed_extensions'] - dostępne od wersji v6.5 - lista akceptowanych rozszerzeń plików, które skrypt dopuści do wgrania na serwer. Zachowaj szczególną ostrożność przy dodawaniu kolejnych rozszerzeń.
Pamiętaj także o:
- usunięciu języków, których nie używasz.