Press "Enter" to skip to content

Pole tekstowe w dziale kontakt – edytowalne, proste rozwiązanie dla PrestaShop 8.x

Admin 1

Czasami zachodzi potrzeba umieszczenia dodatkowych informacji tekstowych w dziale kontakt. Specyfikacja naszej sprzedaży wymusza np. poinformowanie klientów o miejscu odbioru osobistego, terminach pracy zespołu sprzedaży albo innych ważnych informacjach. Niestety strona kontaktowa to dość statyczna strona i nie ma tam po prostu pola tekstowego gdzie można wprowadzić opis. Tą prostą modyfikacją uzupełnimy sklep o tę funcjonalność.

Wielokrotnie poruszaliśmy już ten temat w artykułach:

PrestaShop 1.7:

PrestaShop 1.7 – edytowalne dane teleadresowe w dziale kontakt

PrestaShop 1.6:

Dodawanie informacji teleadresowych w dziale kontakt z możliwością ich edycji

Wersja PrestaShop 8.2.x wymaga nieco innego podejścia. Po prostu wykorzysujemy inny moduł. Idea jest taka sama. Oto szczegóły.

Dodanie strony z treścią

W dziale:

Ulepszanie -> Wygląd -> Strony

Utwórz dowolną nową stronę (tytuł nie ma znaczenia) i wprowadź w niej (opis) tekst który ma się pojawić w dziale kontakt. Następnie zapisz i zanotuj ID tej strony

Modyfikacja PHP

Przeedytuj plik:

nano modules/contactform/contactform.php

Znajdź funkcję:

public function getWidgetVariables($hookName = null, array $configuration = [])

Kod, który znajduje się na jej końcu:

return [
    'contact' => $this->contact,
    'notifications' => $notifications,
    'token' => $this->context->cookie->contactFormToken,
    'id_module' => $this->id,
];

Zamień na:

$cmsInfo = new CMS(11, intval($this->context->cookie->id_lang));

return [
    'contact' => $this->contact,
    'notifications' => $notifications,
    'token' => $this->context->cookie->contactFormToken,
    'id_module' => $this->id,
    'cmsinfo' => $cmsInfo->content
];

Oczywiście zamiast „11” podaj ID Twojej strony z treścią.

Dodanie wartości zmiennej w kodzie HTML

Przeedytuj plik:

themes/{SZABLON}/modules/contactform/views/templates/widget/contactform.tpl

np.

themes/classic/modules/contactform/views/templates/widget/contactform.tpl

Jeśli używasz innego szablonu niż domyślny zamiast „classic” podaj nazwę Twojego szablonu tj. folder w którym jest on umieszczony na serwerze FTP

Na końcu tego pliku wklej:

<section class="contact-aditionals">
{$cmsinfo nofilter}
</section>

Albo zgrabniej otocz to warunkiem IF:

{if $cmsinfo}
<section class="contact-aditionals">
{$cmsinfo nofilter}
</section>
{/if}

Wyczyść cache sklepu w dziale „Wydajność” jeśli zmiany nie są widoczne.

Koniecznie daj znać na naszym FB czy zmiana się powiodła 😉

grafika:wallpaperflare.com

Dodaj komentarz

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

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Zobacz także !
Powiadomienia poczty (mailalerts) dla właściciela i e-mail po angielsku. Jak…