Przykłady użycia do wtyczki "Zarządzanie dodatkowymi parametrami (sklep)"
Obraz kategorii
Aby dodać zdjęcie do kategorii, utwórz pole z typem IMAGE (Zdjęcia) i kluczem np. image. W interfejsie edycji kategorii w utworzonym polu załaduj zdjęcie. Aby dodać obraz, przejdź do edytora projektów (Sklep -> Witryna -> Szablony) i wybierz plik category.html.
Znajdź linie:
{foreach $category.subcategories as $sc}.
<li><a href="{$sc.url}">{$sc.name|escape}</a></li>.
{/foreach}
I dodaj wyjście obrazu: <img src="{$sc.params.image}" />.
Na przykład w ten sposób:
{foreach $category.subcategories as $sc}.
<li><a href="{$sc.url}"><img src="{$wa_url}{$sc.params.image}" />{{$sc.name|escape}</a></li>.
{/foreach}
Możliwość dodawania różnych plików do produktu:
instrukcje, schematy, oprogramowanie, sterowniki, certyfikaty itp.
Aby dodać plik do produktu, utwórz pole z typem FILE (pole do pobrania pliku) i kluczem np. sertifikat. Następnie w szablonie produktu w odpowiednim miejscu wpisz warunek, aby pokazać link do pobrania pliku:
{if isset($product.params.sertifikat)}
<a href="{$wa_url}{$product.params.sertifikat}">Ściągnij certyfikat produktu</a>
{/if}
Aby dodać OBRAZ do produktu należy utworzyć pole z typem IMAGE i kluczem np. scheme.
Następnie w szablonie produktu wpisz warunek, aby pokazać obrazek:
{if isset($product.params.scheme)}
<img src="{$wa_url}{$product.params.scheme}" />
{/if}
Lub otwieranie obrazu za pomocą linku:
{if isset($product.params.scheme)}
<a href="{$wa_url}{$product.params.sheme}"><img src="{$wa_url}{$product.params.scheme}" /></a>
{/if}
Dodatkowy opis kategorii
Aby dodać dodatkowy opis, można użyć pól typu TEXTAREA lub HTML. Utwórz pole z kluczem description2, na przykład. Następnie, w pliku category.html, edytuj projekt.
Umieść opis we właściwym miejscu: {$category.params.description2}
Używanie różnych szablonów projektowych w kategoriach, produktach lub stronach
Aby dodać możliwość wymuszania szablonów projektowych, utwórz pole z typem SELECT i np. kluczem type. Dodaj wartości z nazwami plików szablonów, na przykład: section, subsection, table, two_column....
Następnie utwórz pliki o schemacie action.type.html, gdzie action jest przedrostkiem (category, product, page). Na przykład dla kategorii: category.section.html, category.subsection.html, category.table.html, category.two_column.html. Tylko upewnij się, że nie ma takiego pliku w motywie projektu przed utworzeniem wartości pól! Cały kod głównego pliku akcji (category.html, product.html, lub page.html) trafia do pliku o nazwie action.default.html, na przykład dla kategorii: category.default.html. Następnie w pliku akcji wpisz warunki wyświetlania stworzonych przez siebie szablonów zamiast domyślnego kodu, a action.default.html będzie teraz głównym szablonem.
Kod dla głównego pliku akcji w przykładzie kategorii:
{$category_file = "category.default.html"}
{if isset($category.params.type) && !empty($category.params.type)}
{$category_file = "category.`$category.params.type`.html"}
{/if}
{include file=$category_file}
Teraz po wybraniu opcji zostanie załadowany konkretny szablon, w zależności od wybranego typu lub domyślny szablon category.default.html.
Wyświetlanie lub ukrywanie pozycji menu z kategorii lub stron
Utwórz pole z typem SELECT i kluczem np.: top_menu. Dodaj dwie opcje do wyboru 1 i 0 - aby pokazać lub nie pokazać w menu. Dla przykładu, użyjemy górnego menu, które składa się ze stron sklepowych, ale możesz zrobić to samo z każdym innym menu.
Kod menu:
{foreach $shop_pages as $page}
<li{if strlen($page.url)>1 && $wa->currentUrl()|strstr:$page.url} class="selected"{/if}>
<a href="{$page.url}">{$page.name}</a>
</li>
{/foreach}
Następnie dodaj warunek wyświetlania w samym menu:
{if isset($page.top_menu) && $page.top_menu=='1'}
TUTAJ KOD TAGU <li>
{/if}
W rezultacie kod będzie taki:
{foreach $shop_pages as $page}
{if isset($page.top_menu) && $page.top_menu=='1'}
<li{if strlen($page.url)>1 && $wa->currentUrl()|strstr:$page.url} class="selected"{/if}>
<a href="{$page.url}">{$page.name}</a>
</li>
{/if}
{/foreach}
Lub odwrotnie warunek wyjątku:
{if isset($page.top_menu) && $page.top_menu=='0'}
{else}
TUTAJ KOD TAGU <li>
{/if}
Wymuszenie wskazania nagłówka H1 innego niż główny tytuł strony, produktów i kategorii.
Aby ustawić inny nagłówek, utwórz pole typu INPUT (pole tekstowe) z kluczem h1. W szablonie projektu category.html, product.html lub page.html, w zależności od akcji, znajdź nazwę zmiennej: {$category.name}, {$product.name} lub {$page.name}, który zazwyczaj jest zamknięty w tagu <h1>, ale może być inny. Wstaw warunek w miejsce tej zmiennej, tutaj w przykładzie z produktem:
{if isset($product.params.h1)}
{$product.params.h1}
{else}
{$product.name}
{/if}
Tworzenie bloku jest "Ważne" dla stron z tekstem lub kodem HTML, zwykle znajduje się w osobnej kolumnie projektu.
Aby utworzyć blok, należy utworzyć pole typu HTML (edytor kodu wizualnego) z kluczem left_block. Następnie w szablonie projektu wykonaj blok, w którym zostanie podmieniona treść. W moim przykładzie użyj stron. Następnie zawiń blok w warunek parametru:
{if isset($page.left_block)}
TUTAJ początek pojemnika jednostki<div>
{$page.left_block}
TUTAJ koniec pojemnika jednostkowego</div>
{/if}
Aby określić ten sam tekst bez powielania go ze strony na stronę, po wprowadzeniu różnych wartości na różnych stronach zmień typ na SELECT (pole wyboru), wszystkie wartości ustawione na stronach zostaną zaimportowane jako wartości wyboru, tak aby można było później wybrać teksty blokowe. Lub użyj początkowo pola SELECT.
Notka o produkcie lub drugi opis.
Notatka na produkcie jest tworzona podobnie jak w przypadku Dodatkowego opisu kategorii lub bloku "Ważne".