Instrukcja instalacji i konfiguracji skryptów

Wpis ten dotyczy skryptów: Corta, Cuadro, Demoty2, Festa2, Holmes2, JobNotice, MotoNotice oraz częściowo Notice3. Wpis jest na bieżąco aktualizowany.

Spis treści:

Zobacz też: Porady i odpowiedzi na pytania dotyczące skryptów stron www

  • Baza danych MySQL
  • Na serwerze uruchomione mod rewrite (obsługa plików .htaccess)
  • Uruchomiona funkcja mail() lub możliwość wysyłki maili przez SMTP
  • Możliwość ustawiania zadań Cron
  • PHP w wersji min 7.2 (lub 7.4)
  • Dla skryptu Demoty2 wymagane są biblioteki GD library oraz FreeType library.

Dotyczy wszystkich skryptów oprócz Notice 3. Instrukcja dla Notice 3 znajduje się pod adresem https://blog.wyremski.pl/skrypt-ogloszeniowy-notice3/#instalacja

Po rozpakowaniu archiwum z plikami skryptu kopiujemy przez FTP do katalogu na serwerze na który wskazuje domena.

W przypadku jeśli nie ma folderu /vendor (np w skrypcie Corta, Cuadro i Demoty2) należy zainstalować biblioteki poprzez SSH będąc w katalogu ze skryptem tym poleceniem:

composer install

Jeśli na hostingu nie masz zainstalowanego composera możesz skorzystać z tej instrukcji:

curl -sS https://getcomposer.org/installer | php

Wtedy zamiast composer musisz wpisywać (pod „php” na niektórych hostingach trzeba podać pełną ścieżkę do php na serwerze):

php composer.phar install

Po wejściu na adres domeny powinien pokazać się program instalacyjny (bezpośredni adres do niego to: http://nazwadomeny.pl/install). Wypełniamy wszystkie pola wpisując dane do bazy danych: serwer (domyślnie localhost), jeśli numer portu jest inny niż 3306 to za dwukropkiem należy go podać w polu serwer, nazwę użytkownika, hasło, nazwę bazy, następnie dane związane z Panelem Administracyjnym, czyli login i hasło jakich chcemy używać przy logowaniu do Panelu Administracyjnego (można je później zmienić).
Jeśli w programie instalacyjnym nie ma pozycji „numer portu” a serwer korzysta z niestandardowego portu należy do adresu serwera dodać dwukropek a po nim numer portu np: „localhost:3307”
W pole „Email administratora” należy wpisać email, który będzie użyty w formularzu kontaktowym oraz w charakterze nadawcy wiadomości email.
W pole „Prefiks tabel w bazie danych” należy wpisać prefiks tabel w bazie danych w przypadku gdy np. do jednej bazy podłączamy kilka różnych witryn – zapobiega to nadpisaniu tabel o takich samych nazwach. W przypadku gdy baza danych używana jest tylko do tej witryny pole można zostawić puste.
W pole „Sól do haseł w systemie” możemy wpisać dowolny ciąg znaków które będą dopisywane do haseł użytkowników, a następnie kodowane funkcją md5. Służy to jako dodatkowe zabezpieczenie haseł użytkowników, na wypadek gdyby ktoś niepowołany dostał się do bazy danych. Ustawienie to zapisywane jest w pliku config/config.php i można je później zmienić (oczywiście po zmianie żaden użytkownik nie będzie mógł się zalogować do systemu , będzie musiał skorzystać z resetu hasła). Pole można zostawić puste, jednak zalecane jest dopisanie dowolnego ciągu znaków. Hasła do Panelu Administracyjnego nie korzystają z „solenia”.
Pole to nie występuje w skryptach Corta, Festa2, Holmes2, JobNotice i MotoNotice – hasła w nich są kodowane przy pomocy bcrypt który automatycznie generuje hash do hasła.

Klikamy „Zapisz”, program instalacyjny powinien stworzyć odpowiednie tabele w bazie danych, nadpisać plik config/db.php oraz ustawić prawidłowe prawa dostępu dla kilku folderów.

Po zakończeniu instalacji należy usunąć folder /install z serwera

W folderze /config znajdują się dodatkowe pliki:
– „db – default.php” – domyślny plik db.php dla instalacji serwisu, wymusza uruchomienie instalacji (w przypadku gdy chcemy ponownie zainstalować skrypt musimy usunąć wszystkie tabele z bazy danych a także usunąć istniejący plik db.php i zmienić nazwę tego pliku na db.php)
– „db – ready.php” – w przypadku gdy chcemy podłączyć serwis do istniejącej bazy danych należy użyć tego pliku, zawiera on wstępnie skonfigurowany plik db.php w którym należy wypełnić pola dotyczące podłączenia do bazy danych (należy usunąć istniejący plik db.php i zmienić nazwę tego pliku na db.php)

Ważne!
W przypadku gdy w Panelu Administracyjnym naszej strony zostało ustawione, żeby domena zaczynała się od przedrostka „www” należy z pliku .htaccess usunąć następujące 2 linie:
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ http://%1%{REQUEST_URI} [R=301,QSA,NC,L]

Zamiast nich należy dodać:
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]

Dotyczy wszystkich skryptów oprócz Notice 3. Instrukcja dla Notice 3 znajduje się pod adresem https://blog.wyremski.pl/skrypt-ogloszeniowy-notice3/#instalacja

Skrypt do prawidłowego działania potrzebuje skonfigurowania zadań cron-a (są to automatycznie wykonywane zadania przez serwer co określoną ilość czasu). W zależności od skryptu nie wszystkie pliki mogą występować:
cron-daily.php – raz dziennie, po północy.
cron-hourly.php – co godzinę
cron-10min.php – co 10 minut lub inny ustalony czas. Plik ten jest odpowiedzialny za wysyłkę mailingu

Cron musi być uruchamiany w tej samej wersji PHP co sam skrypt.

Konfiguracja crona różni się zależnie od serwera/hostingu. Najlepiej jest sprawdzić w dokumentacji. Zwyczajowe wywoływania crona to:

php  /home/TWÓJ_LOGIN/domains/NAZWA_DOMENY/public_html/cron-daily.php

Albo:

wget -q -O – http://domena/cron-daily.php

Po instalacji skryptu Panel Administracyjny jest dostępny pod adresem http://nazwadomeny.pl/admin gdzie nazwadomeny.pl to domena, pod którą jest zainstalowany skrypt.
Login i hasło takie jak zostały podane przy instalacji systemu. Przy pięciokrotnym podaniu nieprawidłowego loginu lub hasła logowanie zostaje zablokowane dla danego adresu IP na 30 minut.

Proszę sprawdzić uruchomioną wersję PHP na serwerze czy jest większa lub równa minimalnej wymaganej przez skrypt.

Proszę się upewnić czy wszystkie pliki strony zostały poprawnie wgrane na serwer, najlepiej spróbować wgrać je ponownie. Proszę także sprawdzić czy w głównym katalogu strony znajduje się plik .htaccess (jest to plik bez nazwy, ma tylko rozszerzenie), a na serwerze jest włączony mod rewrite.

W przypadku serwerów z nginx należy do pliku konfiguracyjnego dodać:

location / {
       rewrite ^/(.+)$ /index.php?path=$1 last;
      }
location /admin {
	try_files $uri $uri/ /admin/index.php?$args;
}

Dotyczy wszystkich skryptów oprócz Notice 3. Instrukcja dla Notice 3 znajduje się pod adresem https://blog.wyremski.pl/skrypt-ogloszeniowy-notice3/#instalacja

Tryb testowy (tryb pokazowy) Panelu Administracyjnego deaktywuje w Panelu Administracyjnym wszystkie funkcje edycyjne. Może być używany do pokazania funkcjonalności systemu. Uruchamia się go w pliku config/config.php zmieniając

define('_ADMIN_TEST_MODE_', false); 

na

define('_ADMIN_TEST_MODE_', true);

Dotyczy wszystkich skryptów oprócz Notice 3. W Notice 3 należy skorzystać z opcji resetu hasła.

W przypadku gdy nie są znane dane do Panelu Administracyjnego należy ustawić nowy login i hasło bezpośrednio w tabeli w bazie danych. W tym celu logujemy się do phpMyAdmin do bazy danych podłączonej do skryptu, następnie wchodzimy do tabeli admin (lub prefiks_tabel-admin) i klikamy na Przeglądaj. Przy nazwie naszego użytkownika klikamy na edytuj, w pole username wpisujemy nasz nowy login, w pole password hasło i zaznaczamy przy polu password funkcje MD5. Po tym klikamy na „Wykonaj”. W bazie zostaną zapisane nowe dane do Panelu Administracyjnego, którymi możemy się do niego logować. Jeśli nie ma żadnych użytkowników możemy dodać nowego poleceniem MySQL:

INSERT INTO admin(username, password) VALUES ('nowy login',md5('nowe hasło'));

W przypadku skryptów Corta, Festa2, Holmes2, JobNotice i MotoNotice dane w bazie nie są hashowane funkcją MD5 ale funkcją BCrypt. A więc nie zaznaczamy MD5. Przykładowy hash od hasła 1234 to: $2y$10$J/PrdUn1NwP38XoQVBMu5e8hzivdrUd/ssg3VFa1XNEGAelJZuu6u

Polecenie dodania nowego użytkownika w tym momencie wygląda tak (dla hasła 1234):

INSERT INTO admin(username, password) VALUES ('nowy login','$2y$10$J/PrdUn1NwP38XoQVBMu5e8hzivdrUd/ssg3VFa1XNEGAelJZuu6u');

Po zalogowaniu do panelu administracyjnego można zmienić hasło.

Dotyczy tylko zwykłej captchy (nie reCAPTCHA) i tylko sytuacji gdy ustawimy adres bazowy Base URL strony z przedrostkiem „www”. W takiej sytuacji należy z pliku .htaccess usunąć następujące 2 linie które przekierowują na wersję bez www:
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ http://%1%{REQUEST_URI} [R=301,QSA,NC,L]

W przypadku gdy na domenie uruchamiany certyfikat SSL należy w pliku .htaccess od komentować (usunąć znak # na początku) z tych dwóch linii:

#RewriteCond %{HTTPS} !=on
#RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

Tak aby wyglądało w ten sposób:

RewriteCond %{HTTPS} !=on
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

Należy także w Panelu Administracyjnym w ustawieniach zmienić Base URL aby zaczynał się od https://

Dotyczy skryptów Corta, Festa2, Holmes2, JobNotice, MotoNotice, Notice3

W celu uruchomienie reCAPTCHA musimy wygenerować Site Key (klucz witryny) i Secret Key (klucz tajny) na swoim koncie Google. Będąc zalogowani w Google przechodzimy pod adres: https://www.google.com/recaptcha/admin#list i klikamy na przycisk Stwórz (+). W polu Etykieta wpisuje dowolną nazwę, wybieramy

Dotyczy wszystkich skryptów oprócz Notice 3. W Notice 3 należy postępować zgodnie z dokumentacją Symfony.

Aby stworzyć własny szablon w skrypcie najłatwiej jest skorzystać ze standardowego szablonu tylko wprowadzić w nim własne zmiany. Należy skopiować katalog /views/default wraz ze wszystkimi plikami do katalogu views/[tu nasza nazwa szablonu] a następnie w panelu administracyjnym w ustawieniach wyglądu wybrać nasz nowy szablon. Nazwa szablonu nie może zawierać spacji ani znaków specjalnych (w tym polskich znaków diaktrycznych).

Od tego momentu możemy wprowadzać zmiany w naszym nowym szablonie z możliwością wrócenia do standardowego szablonu (default) w każdej chwili. Aby dokonać własnych zmian niezbędna jest wiedza z zakresu HTML, CSS i JavaScript.

Po każdej zmianie należy opróżnić katalog z cachem szablonu czyli katalog /tmp
Można także w pliku /index.php zakomentować linię 'cache’=>’tmp’ wtedy system nie będzie cachował szablonu.

Jeśli celem modyfikacji jest dokonanie niewielkich zmian np w kolorystyce to sugeruje wykonać je w standardowym szablonie lub dodając własne style CSS w ustawieniach wyglądu w panelu administracyjnym.

Dotyczy wszystkich skryptów oprócz Notice 3. W Notice 3 należy postępować zgodnie z dokumentacją Symfony.

Jeśli z jakiegoś powodu skrypt nie działa, np. po wprowadzeniu własnych mofyikacji należy sprawdzic jakie błędy PHP są zgłaszane. Domyślnie skrypt ukrywa wszystkie błędy. Aby włączyć ich wyświetlanie należy w pliku /config/db.php zmienić stałą _DEBUG_MODE_ na „true”, czyli zmienić:

// Debug Mode (show all error) true/false
define('DEBUG_MODE', false);

Na:

// Debug Mode (show all error) true/false
define('DEBUG_MODE', true)

Po rozwiązaniu problemu należy przywrócić wartość false.

Dotyczy wszystkich skryptów oprócz Notice 3. Instrukcja dla Notice 3 znajduje się pod adresem https://blog.wyremski.pl/skrypt-ogloszeniowy-notice3/#zmiana_jezyka

Dotyczy wszystkich skryptów oprócz Notice3.

Po uruchomieniu programu instalacyjnego wybierz z menu „Select language” preferowany język.

Dotyczy wszystkich skryptów oprócz Notice3.

Wszystkie wersje językowe dostępne są w plikach PHP katalogu /config/langs/
Aby zmienić teksty w istniejącym języku, należy otworzyć istniejący plik PHP, a następnie wyszukać wiersz z szukanym słowem lub zdaniem. Aby dodać nowy język wystarczy skopiować plik z istniejącym językiem (np. polskim), zmienić jego nazwę na „skrót języka” kropka PHP np. „de.php” a następnie ręcznie przetłumaczyć wszystkie znajdujące się w nim teksty. Teksty po lewej, te po angielsku muszą zostać bez zmian. Tłumaczymy tylko teksty po prawej. Przed i po tekstem musi znajdować się pojedynczy cudzysłów. Przetłumaczony plik musi być prawidłowym plikiem PHP, przykład prawidłowego tłumaczenia:

$translate['Add IP to black list'] = 'Dodaj adres IP do czarnej listy';
$translate['Add article'] = 'Dodaj artykuł';
$translate['Add category'] = 'Dodaj kategorie';

Dotyczy wszystkich skryptów oprócz Notice3.

Należy przejść pod adres http://nazwa_domeny/admin/?controller=settings i w trzecim polu od góry wybrać właściwy język.

Dotyczy skryptu Cuadro, Demoty2, Festa2, Holmes2, JobNotice, MotoNotice oraz Notice3

Uwaga! Bardzo ważne jest żeby poniższe czynności wykonać dokładnie krok po kroku. Pominięcie któregoś spowoduje, że logowanie nie będzie działać. Poniższe czynności muszą być wykonane na koncie Facebook należącym do klienta. Strona musi posiadać aktywny certyfikat SSL (adres strony musi zaczynać się od https).

Będąc zalogowanym na swoim koncie Facebook przechodzimy pod adres: https://developers.facebook.com/apps/
Klikamy na „Create App”. Z listy wybieramy „Konsument” i klikamy na „Next”. W polu „Add an app name” wpisujemy nazwę naszej aplikacji (dowolna, sugeruję nazwę strony lub domeny). Następnie klikamy na „Create App”.

Otworzy się okno edycji aplikacji na Facebook-u. Z menu po lewej stronie wybieramy „Settings” > „Basic” i w polu „App Domains” wpisujemy domenę naszej strony. W polu „Privacy Policy URL” wklejamy link do polityki prywatności naszej strony. W polu „User Data Deletion” wybieramy „Data Deletion Instructions URL” i wklejamy adres URL podstrony z instrukcją usuwania danych osobowych (w skryptach konto użytkownika i dodane przez niego materiały może usunąć administrator strony). Klikamy na „Save Changes”.

W menu po lewej obok PRODUCTS klikamy na znak +. Przy Facebook Login wybieramy Set Up. Nie korzystamy z Quickstart tylko po prostu w menu po lewej pod Facebook Login klikamy na Settings.
W polu „Valid OAuth Redirect URIs” wpisujemy następujące wartości (jeśli używamy polskiej wersji skryptu), proszę pamiętać żeby „nazwa_domeny.pl” podmienić na nazwę naszej domeny:
https://nazwa_domeny.pl
https://nazwa_domeny.pl/logowanie
https://nazwa_domeny.pl/logowanie?facebook_login

W przypadku skryptu Notice3 wpisujemy tylko taki adres:
https://nazwa_domeny.pl/logowanie/fb

Facebook wymaga aby adresy były na SSL. Klikamy na „Save Changes”.

Po lewej w menu App Review klikamy na Permissions and Features. Wyszukujemy i włączamy standardowy dostęp do „email” oraz „public_profile”.

U góry klikamy na „In development” aby zmienić tryb aplikacji na produkcyjny. Wybieramy kategorie (np Business and Pages) i klikamy na Switch Mode. „In development” powinno się zmienić na „Live”.

Następnie klikamy w menu po lewej na „Settings”>”Basic”.  W drugim oknie przeglądarki wchodzimy w ustawienia portali społecznościowych naszego skryptu (w panelu administracyjnym) i kopiujemy z Facebook-a wartość z pola „App ID” do pola „Facebook API” oraz z pola „App Secret” do pola „Facebook Secret”.
Zaznaczamy także pole „Zezwól na logowanie przez Facebook-a”.

Zgodnie z https://developers.facebook.com/docs/development/maintaining-data-access/data-use-checkup/ począwszy od stycznia 2024 użytkownicy będą musieli powiązać konto firmowe z aplikacją Facebook i przesłać dokumenty identyfikacyjne firmy aby móc korzystać z możliwości logowania przez Facebook.

Dotyczy skryptu Cuadro, Demoty2, Festa2, Holmes2, JobNotice, MotoNotice oraz Notice3

Aby podłączyć pod skrypt możliwość logowania przez Google musimy mieć założone konto na Google. Następnie przechodzimy do Google API Console pod adres https://console.developers.google.com/
Jeśli nie mamy stworzonego projektu klikamy na „Stwórz projekt” (Create project) u góry w menu.
Następnie przechodzimy na stronę projektu, z menu po lewej wybieramy zakładkę „Biblioteka” (Library), szukamy pozycji „Google+ API”, klikamy na nią, następnie na „Włącz” (Enable). Podobnie włączamy pozycję „People API”.
Następnie przechodzimy do zakładki „Dane logowania” (Credentials) z menu po lewej stronie.
Klikamy na „Utwórz dane logowania” (Create Credentials) i wybieramy pozycję „Identyfikator klienta OAuth” (OAuth client ID). Jako typ aplikacji wybieramy „Aplikacja internetowa” (Web application).

Następnie są dwie możliwości:

  • 1. Jeśli jest to nowy projekt Google może wyświetlić monit o wybór „User Type”. Wybieramy „Zewnętrzny”.

Wpisujemy nazwę aplikacji. W polu „Autoryzowane domeny” wpisujemy adres URL naszej strony. W następnym kroku dodajemy następujące zakresy:

…/auth/userinfo.email

…/auth/userinfo.profile

W następnym kroku jeśli wyświetli się monit o publikację, publikujemy aplikację.

Następnie ponownie przechodzimy do zakładki „Dane logowania” (Credentials) z menu po lewej stronie.
Klikamy na „Utwórz dane logowania” (Create Credentials) i wybieramy pozycję „Identyfikator klienta OAuth” (OAuth client ID). Jako typ aplikacji wybieramy „Aplikacja internetowa” (Web application) i przechodzimy do punktu 2.

  • 2. Jeśli jest to istniejący projekt Google w polu „Autoryzowane identyfikatory URI przekierowania” wpisujemy adres URL strony logowania naszego skryptu czyli https://nazwa_domeny.pl/logowanie (w przypadku Notice3 będzie to https://nazwa_domeny.pl/logowanie/google) gdzie nazwa_domeny.pl to adres URL naszej strony.

Następnie pobieramy z Dane logowania Google ID i Google Secret. Obydwie wartości kopiujemy do ustawień portali społecznościowych w naszym skrypcie: http://nazwa_domeny.pl/admin/?module=settings_social_media
W tym miejscu zaznaczamy także pole „Zezwól na logowanie przez Google”. Po zapisaniu zmian na stronie logowania i rejestracji w naszym skrypcie zobaczmy nowe przyciski pozwalające na logowanie przez Google.

Dotyczy skryptu Festa2, Holmes2, JobNotice oraz MotoNotice

Aby uruchomić płatności Dotpay musimy mieć aktywowane konto w Dotpay w wersji T2 (jest to wymóg). Następnie przechodzimy do panelu logowania: https://ssl.dotpay.pl/enter
Z menu u góry wybieramy pozycję „Ustawienia”. Znajdziemy tam wygenerowany PIN, który jest nam niezbędny do podłączenia płatności. Pozycja „Urlc” powinna zostać pusta, pozycja „Blokuj zewnętrzne urlc” powinna być odznaczona, natomiast pozycje „HTTPS verify” oraz „SSL certificate verify” powinny być zaznaczone jedynie w przypadku gdy na naszej stronie ze skryptem mamy włączone SSL (adres strony zaczyna się od https://)
Przechodzimy do ustawień płatności w naszym skrypcie w Panelu Administracyjnym
Zaznaczamy pole „Płatność przez Dotpay”. W pole „Dotpay ID” wpisujemy nasz ID z systemu DotPay (dostaliśmy go przy rejestracji), w pole „Dotpay PIN” kopiujemy wygenerowany PIN z systemu Dotpay, pole „Dotpay –
waluta” wpisujemy skrót waluty używanej w Dotpay (domyślnie PLN).
Pole „Dotpay Tryb Testowy” zaznaczamy jedynie w przypadku gdy chcemy przetestować płatności – Dotpay w tym celu wymaga zarejestrowania się na stronie https://ssl.dotpay.pl/test_seller/ (po rejestracji zostanie wygenerowany inny numer ID i kod PIN niż na zwykłym koncie w Dotpay)

W przypadku gdy po wykonaniu płatności skrypt nie otrzymuje odpowiedzi z systemu Dotpay należy sprawdzić logi odpowiedzi z serwera w Dotpay. Jeśli występuje tam „You don’t have permission to access /php/payment_dotpay.php on this server.” to należy zgłosić ten błąd do administratora swojego serwera. Prawdopodobnie firewall blokuje dostęp do tego pliku.

Dotyczy skryptów Festa2, Holmes2, JobNotice, MotoNotice oraz Notice3

Przechodzimy do ustawień płatności w naszym skrypcie:
http://nazwa_domeny.pl/admin/?controller=settings_payments
Zaznaczamy pole „Zapłać przez PayPal”, w pole „PayPal adres email” wpisujemy adres email naszego konta w PayPal.
W pole „PayPal lokalizacja” wpisujemy skrót lokalizacji (domyślnie PL),więcej informacji na stronie: https://developer.paypal.com/docs/classic/api/country_codes/
PayPal waluta – domyślnie PLN. Skrót waluty, która ma być używana w systemie PayPal. Należy mieć w systemie zaznaczone automatyczną obsługę wybranej waluty. Więcej informacji: https://developer.paypal.com/docs/classic/api/currency_codes/
Pole „PayPal Tryb Testowy (sandbox)” powinno być odznaczone przy normalnym użytkowaniu serwisu. Tryb testowy służy do przetestowania integracji z PayPal – w tym celu nie należy używać standardowego konta w PayPal, ale konta stworzonego w trybie sandbox: https://developer.paypal.com/developer/accounts/

W przypadku problemów z płatnościami PayPal: system nie otrzymuje powiadomień o dokonanej transakcji, nic nie wyświetla w logach płatności, należy wykonać poniższe kroki:
Problem może się pojawić szczególnie kiedy waluta używana na portalu jest inna od domyślnej waluty dla konta PayPal. Proszę sprawdzić status transakcji: https://www.paypal.com/businessexp/transactions Jeśli mają status oczekujący trzeba je ręcznie zatwierdzić. Aby nie musieć w przyszłości ręcznie zatwierdzać każdej transakcji proszę w tym miejscu https://www.paypal.com/pl/cgi-bin/webscr?cmd=_profile-pref w pierwszym polu
zaznaczyć opcję: „Tak” – automatyczne przekonwertowywanie walut.

Dotyczy skryptów Festa2, Holmes2, JobNotice, MotoNotice oraz Notice3

Przechodzimy do ustawień płatności w naszym skrypcie: http://nazwa_domeny.pl/admin/?controller=settings_payments
Zaznaczamy pole „Zapłać przez Przelewy24”.
W pole „Przelewy24 – ID sprzedawcy” wpisujemy ID sprzedawcy nadane przez serwis Przelewy24 (identyfikator używany do logowania w serwisie Przelewy24).
W pole „Przelewy24 – ID sklepu” wpisujemy ID naszego sklepu w Przelewy24. Domyślnie jest ono takie samo jak ID sprzedawcy.
W pole „Przelewy24 – CRC” wpisujemy 16 znakowy kod CRC. Aby go wygenerować należy po zalogowaniu do panelu Przelewy24 kliknąć „Moje dane” w zakładce „Moje Konto”, następnie wyświetli się lista ustawień, wśród których będzie „Klucz do CRC” – klucz ten należy skopiować. Uwaga! Wygenerowanie nowego klucza w systemie Przelewy24 spowoduje że płatności używające starego klucza nie będą działały.
Przelewy24 – tryb testowy (sandbox) – to tryb testowy płatności. Aby z niego skorzystać należy mieć założone konto sandbox w przelewy24 oraz wpisać wartość CRC z trybu sandbox. Przy normalnym funkcjonowaniu serwisu tryb ten należy wyłączyć!
Szczegółowa instrukcja znajduje się pod adresem: https://www.przelewy24.pl/storage/app/media/pobierz/Instalacja/przelewy24_dokumentacja_3.2.pdf

Zgodnie z informacją od Przelewy24 na serwerach nazwa.pl należy wyłączyć zabezpieczenie WAF – również ochrony standardowej (Active.admin – admin.nazwa.pl >> Ustawienia >> Ustawienia WWW i PHP >> Web Application Firewall)

Dotyczy skryptu Notice3.

W panelu systemu płatności HotPay należy ustawić prawidłowy adres URL powiadomień (notyfikacji):
https://nazwadomeny.pl/payment/hotpay/check
gdzie nazwadomeny.pl to adres URL domeny gdzie został zainstalowany skrypt.
Następnie w panelu administracyjnym skryptu przechodzimy do Ustawienia > zakładka Płatności, zaznaczamy „Płać przez HotPay” oraz uzupełniamy wymagane pole: HotPay – sekret usługi.

W trybie testowym HotPay możemy przetestować płatności. Poniżej odpowiedzi z serwera:
SUCCESS – wszystko poszło ok, płatność przyjęta
FAILURE – status płatności nieprawidłowy
CHECK HASH – sprawdź poprawność hash
EMPTY POST – skrypt nie otrzymał wymaganych danych

Więcej informacji na temat integracji znajduje się w instrukcji: https://hotpay.pl/documentation_v3/tech_paybylink.pdf

Dotyczy skryptu Holmes2.

W panelu Paynow należy dodać nowy Sklep (punkt płatności). W platforma płatności wybieramy „Własna platforma”. Jako adres powiadomień ustawiamy https://holmes2.itworksbetter.net/php/payment_paynow.php gdzie holmes2.itworksbetter.net zamieniamy na adres naszej domeny. Adres powrotu ustawiamy taki sam.

Pobieramy Klucz dostępu do API oraz Klucz obliczania podpisu i kopiujemy je do Ustawień płatności w skrypcie. Zaznaczamy opcje „Zapłać przez Paynow”. Checkbox „Paynow tryb sandbox” powinień być zaznaczony jedynie gdy korzystamy z trybu Sandbox (środowiska testowego), w przeciwnym razie musi być odznaczony.

Dotyczy skryptu Notice3.

W panelu Blue Media korzystając z zakładki Sklepy możesz znaleźć ID serwisu oraz klucz współdzielony. Żeby przejść do szczegółów – kliknij w nazwę swojej firmy znajdującą się w kolumnie Nazwa. ID serwisu oraz klucz współdzielony skopiuj do zakładki Ustawienia > Płatności w skrypcie Notice3.

Dotyczy skryptu Notice3.

Zaloguj się do panelu administracyjnego PayU. Przejdź do zakładki Płatności elektroniczne, a następnie Moje sklepy. Na liście dostępnych sklepów, kliknij przycisk Punkty płatności. W nowym widoku kliknij w nazwę wybranego punktu płatności. W tym miejscu znajdziesz PayU – ID oraz PayU – Second key (MD5) które powinieneś wprowadzić w zakładce Ustawienia > Płatności w skrypcie Notice3.

Pamiętaj żeby pole „PayU – sandbox” było odznaczone.

Dotyczy skryptu Notice3.

Aby uruchomić płatności przez system Tpay należy w zakładce Ustawienia > Płatności w skrypcie Notice3 wpisać ID z systemu Tpay otrzymane podczas rejestracji u nich oraz kod który można pobrać z Menu > Ustawienia > Powiadomienia > Kod bezpieczeństwa.

Pozostałe

Dotyczy skryptów: Cuadro, Demoty2, Festa2, Holmes2, JobNotice i MotoNotice.

Wszystkie pliki lub ogłoszenia dodane przez użytkowników mogą edytować moderatorzy serwisu (proszę nie mylić z administratorami – ci ostatni mają dostęp do panelu administracyjnego).
Aby móc edytować pliki innych użytkowników należy najpierw przydzielić dla swojego konta użytkownika w serwisie prawa moderatora. W tym celu logujemy się do Panelu Administratora i klikamy zakładkę „Użytkownicy”
Przy użytkowniku, któremu chcemy przydzielić prawa moderatora w polu „Moderator” klikamy aby zostało oznaczone jako „Tak”.
Następnie w Panelu Administratora przechodzimy do zakładki „Ogłoszenia” lub „Pliki” i klikamy na przycisk „Edytuj”.
Aby móc edytować dany plik, musimy być zalogowani w samym serwisie (nie mylić z panelem administratora) na konto użytkownika z prawami moderatora.
W serwisie może być wielu moderatorów.

Dlaczego administrator nie ma podglądu nieaktywnych ogłoszeń?

Skrypt od strony użytkownika nie sprawdza czy administrator jest zalogowany. Ma to na celu uniknięcie niepotrzebnych zapytań do bazy danych i przyśpieszenie działania strony. Dlatego tylko moderator (który jest użytkownikiem z odpowiednimi prawami) ma dostęp do edycji materiałów i podglądu wszystkich ogłoszeń.

Dotyczy skryptu Cuadro.

Maksymalny dostępny rozmiar przesyłanych zdjęć przy dodawaniu ogłoszenia lub uploadzie mp4 (w skrypcie Cuadro) jest ograniczony ustawieniami serwera, zależy od zmiennych:
post_max_size oraz upload_max_filesize

Proszę o kontakt z administratorem serwera w celu sprawdzenia jakie wartości mają te zmienne, oraz żeby w razie potrzeby je zwiększył.

W skrypcie Cuadro w ustawieniach w Panelu Admina można zmienić maksymalny rozmiar plików MP4. Rozmiar ten powinien być równy lub mniejszy od ustawień serwera

Dotyczy skryptów Festa2, Holmes2, JobNotice i MotoNotice

Uwaga! Mapy Google po przekroczeniu danej liczby wyświetleń są odpłatne. Dodatkowo do uruchomienia klucza wymagane jest wypełnienie danych do rozliczenia. W przeciwnym razie mapy nie będą się poprawnie wyświetlać. Więcej informacji u dostawcy tej usługi.

Wygenerowanie klucza API wg poniższej instrukcji jest wymagane jeśli chcemy w serwisie wyświetlać mapę Google oraz wyszukiwać ogłoszenia po odległości.

Aby uruchomić Mapę Google w serwisie należy posiadać klucz Google Maps API. Po zalogowaniu w Google przechodzimy pod adres: https://console.developers.google.com/apis/dashboard
Z menu po lewej u góry wybieramy pozycję „Wybierz projekt” a następnie „Nowy projekt”, wpisujemy nazwę projektu (nie ma znaczenia) -> „Utwórz”.

Następnie klikamy na „Włącz interfejsy API i usługi”, wyszukujemy i uruchamiany następujące interfejsy: Maps JavaScript API, Geocoding API oraz Places API.

Następnie w menu po lewej przechodzimy do „Dane logowania” > „Utwórz dane logowania” > „Klucz interfejsu API”. Zostanie wygenerowany kod API key który należy wkleić w ustawieniach skryptu (ustawienia ogólne w panelu admina) w pole „Google Mapy API”

Możemy wprowadzić ograniczenia dla aplikacji aby można było ją używać tylko z podanych odsyłających adresów HTTP (witryny). W te pole należy wkleić wartość http://nazwa_domeny.pl/* lub https://nazwa_domeny.pl/* (gdzie nazwa_domeny.pl to nasza nazwa domeny)

W polu „Google Mapy API 2 (dla „pokaż na mapie”)” możemy wkleić ten sam klucz API w przypadku gdy nie korzystamy z ograniczenia aplikacji lub wygenerować drugi, tylko jako ograniczenie zaznaczyć pole „Adresy IP (serwery WWW, zadania cron itp.)” i podać w nim adres IP serwera. Ten klucz nie jest widoczny dla użytkowników więc może pozostać bez zaznaczonych ograniczeń.

Jeśli po wykonaniu powyższych kroków Mapy Google nadal nie wyświetlają się poprawnie proszę sprawdzić błąd jaki wyświetla się w konsoli JavaScript (w przeglądarce Google Chrome klikamy naraz klawisze CTRL SHIFT I a następnie przechodzimy do zakładki Console) i skontaktować się z dostawcą tej usługi.

Usunięcie użytkownika, ogłoszenia, pliku nie wpływa na statystyki w panelu administracyjnym, chyba, że zostaną usunięte logi wyświetleń ogłoszenia lub logowań użytkowników.

Proszę sprawdzić czy wiadomości nie znajdują się w folderze SPAM oraz czy problem występuje tylko z jedną skrzynką pocztową czy z różnymi. Jeśli wiadomości nie dochodzą na żadną skrzynkę pocztową proszę się upewnić u administratora serwera czy na serwerze jest uruchomiona funkcja PHP o nazwie mail(). Jeśli nie jest proszę skonfigurować wysyłkę przez SMTP, zgodnie z dokumentacją techniczną danego serwera. Dane do wysyłki przez SMTP proszę uzupełnić w panelu admina w zakładce „Ogólne ustawienia”. Skrypty umożliwiają wysyłkę wiadomości testowej aby sprawdzić czy ustawienia są poprawne. Jeśli problem nadal występuje proszę zgłosić to administratorowi serwera. Każdy ze skryptów posiada logi wysłanych maili w których wyświetlane są tylko maile które były wysłane ze skryptu PHP.

Często spotykane poprawne konfiguracje to:
– port 587 i secure „tls”
– port 465 i secure „ssl”

Większość wiadomości email trafia do SPAM-u

Taki problem może występować szczególnie na hostingach współdzielonych – takich w których z jednego IP korzysta wiele serwisów. Skrypt nie ma na to wpływu – takie sytuacje proszę zgłaszać administratorowi serwera. Najlepszym rozwiązaniem jest przeniesienie strony na serwer dedykowany z indywidualnym adresem IP i nie wysyłać z niego mailingów, newsletterów itd.

Rozwiązania alternatywne które mogą zadziałać w pewnych sytuacjach:

  • zmiana treści wiadomości email z poziomu panelu administracyjnego aby nie były podobne do prawdziwego spamu
  • wysyłka wiadomości przez SMTP
  • jako adres email administratora serwisu powinien być ustawiony adres istniejącego konta email na danym serwerze

Jeśli po dodaniu kodu reklamy w Google AdSense nie wyświetla się ona na stronie może to być spowodowane nie spełnianiem przez stronę wymagań AdSense. Jednym z nich jest duża ilość treści. W niektórych skryptach ze względu na małą ilość treści na stronie (np w skryptach z obrazkami lub linkami) Google AdSense może nie aktywować wyświetlania reklam. W pewnych przypadkach wyświetlanie reklam może zostać uruchomione po kilku godzinach/dniach. Zachęcam także do zapoznania się z: zasadami programu Adsense

Dotyczy skryptów: Cuadro, Demoty2, Festa2, Holmes2, JobNotice i MotoNotice.

W skryptach istnieje zabezpieczenie przed brutal force i innymi atakami polegające na sprawdzaniu IP użytkownika. W pewnym przypadkach gdy użytkownik ma zmienny adres IP i zostanie on zmieniony pomiędzy załadowaniem strony a kliknięciem Zaloguj/Zapisz/Dodaj skrypt odrzuci to żądanie. W takim przypadku w panelu administratora należy wyłączyć opcje „Sprawdzaj IP użytkownika przy logowaniu” (w zależności od skryptu nazwa może być trochę inna)

Kod HTML slajdera na stronie głównej powinien być podobny do tego, który jest w demie danego skryptu. Jeśli przypadkiem zostanie nadpisany można łatwo go skopiować z dema.

Bardzo ważne jest żeby zdjęcia w slajderze były tych samych proporcji (najlepiej tych samych wymiarów) – dzięki temu reszta strony nie będzie skakać przy zmianie slajdu. Nie ma ustalonych odgórnie wymiarów jakie powinny mieć zdjęcia w slajderze.

Odnośnie wszystkich zdjęć dodawanych w edytorze wizualnym w panelu admina: Przy edycji zdjęć zdarza się że edytor wizualny Ckeditor ustawia ich wymiary (w polach szerokość i wysokość). Aby zdjęcie było responsywne należy usunąć te wymiary, inaczej na urządzeniach mobilnych będzie ono rozciągnięte. Podsumowując w edycji zdjęcia pola szerokość i wysokość powinny być puste.

Dotyczy skryptów Festa2, Holmes2, JobNotice i MotoNotice

Uwaga! Poniższe czynności powinny być wykonywane tylko przez osoby z podstawową wiedzą na temat PHP.
Skrypty umożliwiają zmianę sposobu wyświetlania linków do kategorii, typów i regionów w których zostały dodane ogłoszenia.
Domyślnie linki mają postać zgodną z obecnymi wytycznymi dotyczącymi SEO:
http://nazwa_domeny.pl/s-nazwa_regionu/c-nazwa_kategorii/t-typ_ogloszenia

Jeśli w pliku config/config.php ustawimy wartość stałej _CLASSIFIED_PATH_ (domyślnie true) na false to zostaną wyłączone wszystkie przekierowania, np.
https://motonotice.itworksbetter.net/ogloszenia?category=1&type=sprzedam&state=kujawskopomorskie
Natomiast ustawienie wartości na true uruchomi przekierowanie kategorii, regionu i typu np
https://motonotice.itworksbetter.net/c-samochody-osobowe/t-sprzedam?state=kujawskopomorskie

Istnieje także możliwość zmiany prefiksów dla kategorii, regionów i typu, należy przy tym uważać żeby prefiksy się nie powtarzały, nie miały pustej wartości ani żeby nie była to wartość od której może się zaczynać nazwa kategorii, regionu lub typu.
Domyślnie dla kategorii jest to „–c”, dla regionu „–s” a dla typu „–t”

Dotyczy skryptów: Festa2, Holmes2, JobNotice, MotoNotice i Notice 3.

Jeśli po upływie okresu trwania ogłoszenia / promowania ogłoszenia ono cały czas jest widoczne w serwisie to nie zostały skonfigurowane poprawnie zadania crona. Szczegóły jak należy skonfigurować te zadania znajdują się w niniejszej instrukcji. Plik na serwerze /cron-daily.php jest odpowiedzialny m.in. za dezaktywacje wygasłych już ogłoszeń, dezaktywacje promowania ogłoszeń, usunięcie kont nieaktywowanych użytkowników, dezaktywacje linków do resetu hasła, usunięcie starych ogłoszeń, wygenerowanie nowego pliku sitemap.xml itd

Uruchomienie zadań crona na serwerze jest niezbędne aby skrypt działał prawidłowo!

Dotyczy skryptów: Cuadro, Demoty2, Festa2, Holmes2, JobNotice oraz MotoNotice.

Skrypty mają zabezpieczenie przed robotami polegające na generowaniu kodów sesyjnych przydzielonych dla danego adresu IP w formularzu logowania i dodawania ogłoszeń. Niestety niektóre przeglądarki lub dostawcy internetu mogą zmieniać dynamicznie adres IP i wtedy może nie być możliwe dodanie ogłoszenia lub zalogowanie się. W takiej sytuacji należy w panelu administracyjnym skryptu w ustawieniach wyłączyć opcję „Sprawdzaj IP użytkownika przy logowaniu i dodawaniu ofert” (zależnie od skryptu jej nazwa może być taka lub podobna).

Skrypt Demoty2 wymaga aby na serwerze były zainstalowane biblioteki GD library oraz FreeType library. W przypadku ich braku obrazki nie będą generowane. Proszę o kontakt z administratorem serwera w celu uzyskania informacji jak je zainstalować. Domyślnie większość hostingów ma je już zainstalowane.

Autor skryptu na prośbę klienta może wysłać najnowszą wersję skryptu, jednak to sam klient musi go zaktualizować. Aby zaktualizować skrypt należy najpierw z serwera usunąć stary skrypt (wszystko oprócz folderu /upload oraz pliku /config/db.php) a następnie wgrać pliki nowej wersji skryptu oprócz katalogu /install oraz pliku /config.db.php. Proszę pamiętać, że wszystkie ręcznie wykonane modyfikacje w plikach skryptu zostaną utracone. Należy także sprawdzić czy nowsza wersja skryptu nie ma zmian w bazie danych porównując budowę aktualnej bazy do zrzutu bazy w SQL w folderze /install nowszej wersji.

Najpierw należy się upewnić że w panelu admina skryptu jest włączone wyświetlanie komentarzy z FB i przycisku do polubienia z FB.

Zgodnie z informacją z oficjalnej dokumentacji Facebooka https://developers.facebook.com/docs/plugins/comments/ w Unii Europejskiej i w kilku innych krajach widget będzie działał jedynie wtedy gdy użytkownik jest zalogowany do swojego konta Facebooka i w ustawieniach swojego konta włączył opcjonalne cookie z FB. Informację jak to zrobić można znaleźć tutaj https://www.facebook.com/help/336858938174917

Jeśli zmieniałeś kod w plikach .css lub .js i zmiany nie są widoczne na stronie wynika to z cachowania tych plików przez przeglądarkę a nie przez sam skrypt. Problem często występuje w przeglądarce Chrome. Usunięcie pamięci podręcznej w przeglądarce rozwiązuje problem. Można też zmienić link do pliku css, js.

Otwórz plik config/config.php i zmień wartość

$settings['assets_version'] = 1;

na kolejną liczbę. Wykonuj to po każdej zmianie CSS/JS.

Jeśli Twój skrypt nie ma takiej zmiennej, musisz w pliku views/default/main.tpl dodać do adresu edytowanego pliku np wartośc ?v=1 itd. Następnie usunąć cache szablonów opróżniając katalog /tmp.

W skrypcie Notice3 należy zmienić w pliku /config/packages/framework.yaml wartość w asset > version a następnie usunąć cache szablonów poleceniem:

php bin/console cache:clear --no-warmup -e prod

Wszystkie skrypty posiadają tag meta og:image z linkiem do obrazku. Zgodnie z informacją na stronie https://developers.facebook.com/docs/sharing/best-practices#images obrazki powinny mieć szerokość min 1080px i wysokość 600px. Istnieje także możliwość że Facebook jeszcze nie przeskanował Twojej strony. W tej sytuacji można skorzystać z narzędzia Sharing Debugger dostępnego pod adresem https://developers.facebook.com/tools/debug/ które wymusi na FB przeskanowanie naszego adresu URL. Więcej informacji znajdziesz w tym wpisie blogowym: https://blog.wyremski.pl/miniaturki-przy-udostepnianiu-stron-na-facebooku/

Ta strona używa ciasteczek (cookies), dzięki którym nasz serwis może działać lepiej. Więcej informacji

The cookie settings on this website are set to "allow cookies" to give you the best browsing experience possible. If you continue to use this website without changing your cookie settings or you click "Accept" below then you are consenting to this.

Close