Press "Enter" to skip to content

Moduł smartblog, PrestaShop 8 i niedziałające zdjęcia w blogu. Prosta naprawa!

Admin 0

Moduł do bloga w PrestaShop

Problem pojawia się w przypadku zakupionego szablonu PrestaShop (w naszym przypadku PrestaShop 8.1.7) wraz z wbudowanym modułem smartblog do blogowania.

Jak wiadomo blog w sklepie PrestaShop jest dość dobrym pomysłem aby pomagać w jego orgranicznym pozycjonowaniu w wyszukiwarkach (SEO). Może być też dla klientów po prostu podręcznym źródłem wiedzy na temat asortymentu Twojego sklepu internetowego.

Blog poza dedykowaną stroną ze wszystkimi wpisami posiada hook (rodzaj widgetu lub zaczepu/slotu) na stronie głównej. Są tam prezentowane zazwyczaj 3 najnowsze wpisy. W formie boxów – zdjęcie, tytuł, zajawka itd.

Objawy awarii

Na początku instalacji – wszystko działa prawidłowo. Wpisy-atrapy w blogu dołączonym do demo szablonu działają prawidłowo:

Jednak po dalszej konfiguracji sklepu i włączeniu „przyjaznego adresu URL” dziale „Ruch”:

zdjęcia w module na stronie głównej przestają się wyświetlać:

Co gorsza także w detalach każdego wpisu nie widać zdjęcia wyróżniającego.

Wszystkie te zdjęcia linkują do adresu:

http://[domena-sklepu]/blog/[rozmiar-zdjęcia-ustawienia-modułu]/[tytuł-wpisu].jpg

Czyli np.:

https://pskrk.com/blog/4-single-default/ways-to-deodorize-vegetables-and-fruits.jpg

Wszystkie rozmiary zdjęć – tutaj 4-single-default określa się w ustawieniach modułu smartblog

W zasadzie pod kątem SEO jest to korzystne rozwiązanie. Nazwa obrazka jest sprzężona z tytułem artykułu i wpływa korzystnie na pozycjonowanie.

Jeśli znowu wyłączyć przyjazne linki w sklepie – obrazki działają.

Reset modułu smartblog nic nie daje. Wyłączenie SSL także nic. Wskazówką jest właśnie „przyjazny adres URL” w dziale „Ruch”.

Naprawa

Naprawa jest stosunkowo łatwa do przeprowadzenia.

Kopia bezpieczeństwa pliku .htaccess

Wejdz do katalogu głównego Twojego sklepu (np. poprzez FTP) i wykonaj kopię bezpieczeństwa znajdujacego sie tam pliku:

.htaccess

Np. skopiuj go pod nową nazwą:

.htaccess_kopia

Plik zaczyna nazwę od kropki. W systemach unixowych tak zazwyczaj są oznaczone pliki ukryte. Może być przez to niewidoczny w Twoim programie FTP. Upewnij się, że program wyświetla pliki ukryte.

Pobranie kodu do nadpisywania lików obrazków

Otwórz plik:

modules/smartblog/htupdate.php

Następnie skopiuj z niego zawartość typu:

RewriteRule ^blog/([0-9]+)(\-[\.*_a-zA-Z0-9-]*)(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}modules/smartblog/images/$1$2$3.jpg [L]
RewriteRule ^blog/([a-zA-Z_-]+)(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}modules/smartblog/images/$1$2.jpg [L]

Następnie wklej go w pliku „.htaccess” na jego końcu albo przed dyrektywą dotyczącą obrazków:

# Images

Zauważ, że w pliku PHP z którego kopiujesz te dyrektywy do .htaccess wpisy kończą się znakiem „’;”  – jest to nic innego jak zamknięcie zmiennej PHP (stringa). Należy wkleić to do pliku .htaccess bez tych znaków, bo inaczej Twój serwer może zwrócić błąd 500

Po tej stosunkowo nietrudnej modyfikacji – strona główna po odświeżeniu powinna wyświetlać miniatury bloga. Tak samo zdjęcia w treści wpisu danego artykułu.

Uwaga! W zależności od wersji modułu – kod do skopiowania może być inny. W naszym artykule wersja modułu smartblog to: 4.1.1

grafika: unsplash.com

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

Witryna wykorzystuje Akismet, aby ograniczyć spam. Dowiedz się więcej jak przetwarzane są dane komentarzy.

Zobacz także !
Brak pola do wpisania kodu rabatowego - PrestaShop 8 i…