Kobieta Koduje

Tipy prestashop

1. Dodawanie kodu html w backendzie zamiast tekstu.

Jeśli chcesz w kodzie pliku .tpl edytować skrypt w taki sposób aby móc po stronie admina wprowadzać nie tylko suchy tekst, ale także kod html należy dokonać podmiany np. z
{$conditions}

na

{$conditions|escape:'html' nofilter}

2. Poprawne linkowanie do regulaminu i polityki w zapisie do newslettera, przy zakładaniu konta i w zakładce "moje konto". (wersja 1.7.8.3)

Jeśli używasz modułu ps_emailsubscription i przez panel administratora wprowadzasz warunki zapisu do newslettera, co wygląda mniej więcej tak:

W zakładce „moje konto” i przy zakładaniu konta spotkasz się z denerwującym zachowaniem kodu html, który nie zamienia się na link jak tutaj:

Żeby rozwiązać ten problem musisz dotrzeć do ścieżki modules\ps_emailsubscription i otworzyć plik ps_emailsubscription.php a następnie odszukać linię 1005, a dokładnie funkcję:

public function hookAdditionalCustomerFormFields($params)
    {
        $label = $this->trans(
            'Sign up for our newsletter[1][2]%conditions%[/2]',
            [
                '[1]' => '<br>',
                '[2]' => '<em>',
                '%conditions%' => Tools::htmlentitiesUTF8(
                    Configuration::get('NW_CONDITIONS', $this->context->language->id)
                ),
                '[/2]' => '</em>',
            ],
            'Modules.Emailsubscription.Shop'
        );

        return [
            (new FormField())->setName('newsletter')->setType('checkbox')->setLabel($label),
        ];
    }

i zamienić ją na:

 public function hookAdditionalCustomerFormFields($params)
    {
        $label = $this->trans(
            'Sign up for our newsletter[1][2]%conditions%[/2]',
            [
                '[1]' => '<br>',
                '[2]' => '<em>',
                '%conditions%' => #Tools::htmlentitiesUTF8(
                    Configuration::get('NW_CONDITIONS', $this->context->language->id)
                #),
		,
                '[/2]' => '</em>',
            ],
            'Modules.Emailsubscription.Shop'
        );

        return [
            (new FormField())->setName('newsletter')->setType('checkbox')->setLabel($label),
        ];
    }

To rozwiązanie nie działa? Spróbuj więc odszukać plik

/themes/alysum/templates/_partials/form-fields.tpl

 

i zamiast (linia 90-98):

{block name='form_field_item_checkbox'}
                        <span class="custom-checkbox">
                            <input name="{$field.name}" id="{$field.name}" type="checkbox" value="1"
                                {if $field.value}checked="checked" {/if} {if $field.required}required{/if}>
                            <span>
                                {svgic id='done' class='svgic-done'}
                            </span>
                            <label for="{$field.name}">{$field.label nofilter}</label>
                        </span>
                    {/block}

Wstaw:

 {block name='form_field_item_checkbox'}
                        <span class="custom-checkbox">
                            <input name="{$field.name}" id="{$field.name}" type="checkbox" value="1"
                                {if $field.value}checked="checked" {/if} {if $field.required}required{/if}>
                            <span>
                                {svgic id='done' class='svgic-done'}
                            </span>
                            <label for="{$field.name}">{$field.label|unescape:'html' nofilter}</label>
                        </span>
                    {/block}

3. Jak usunąć z tematu maila prestashop nazwę sklepu [PS_SHOP_NAME] i zmienić jego nazwę (wersja 1.7.8.3.)

Jest jeden zabieg który działa w przypadku maili wysyłanych po przez zmianę statusu zamówienia. Po zastosowaniu tego tipu temat maila określany będzie po przez nazwę statusu. Nie zmienisz w ten sposób tematów innych maili jak np. zmiany hasła itp.

A więc, odszukaj plik ./classes/Mail.php i zamień:

 $subject = '[' . strip_tags($configuration['PS_SHOP_NAME']) . '] ' . $subject;

na:

$subject = $subject;

4. Jak zmienić szablon/wygląd faktury (wersja 1.7.8.3.)

Odnajdź folder /pdf w katalogu głównym i znajdziesz tam wszelkie pliki .tpl które możesz zmieniać:

*.tpl plik do wykonania faktury: header.tpl, footer.tpl, invoice***.tpl
*.tpl plik do wykonania dostawy: header.tpl, footer.tpl, delivery-slip***.tpl
*.tpl pliki do wykonania zwrotów: header.tpl, footer.tpl, order-return***.tpl
*.tpl pliki do wykonania dostawy: supply-order***.tpl

2 thoughts on “Tipy prestashop”

Zostaw 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.