1. Forum używa plików Cookies. Dowiedz się więcej o celu ich używania i możliwości zmiany ustawień Cookies w przeglądarce. Czytaj więcej...

ROZWIĄZANE Tableofproducts.tpl - jak wywołać kodem pierwsze lub drugie zdjęcie produktu?

Dyskusja w 'Zmiana wyglądu sklepu i edycja zaawansowana' rozpoczęta przez użytkownika Trybun, 27 Grudzień 2015.

  1. Trybun

    Trybun Początkujący

    Wiadomości:
    9
    Docenione treści:
    3
    Witam, Męczę się z tym juz kilka godzin.
    Chciałbym wywołać za pomocą kodu nazwę pierwszego i drugiego zdjęcia danego produktu

    Mam kod z pliku tableofproducts.tpl:
    <img src="{imageUrl type='productGfx' width=$skin_settings->img->medium height=$skin_settings->img->medium
    image=$product->MainImageName() overlay=1}" alt="{$product->translation->name|escape}" />

    i chciałbym jakoś zmienić
    $product->MainImageName()
    na kod który zwraca nazwe zdjęcia drugiego w kolejności.

    Dodam że używając
    $img->unic_name
    Wyświetla mi nazwę ostatniego zdjęcia :(

    Będę wdzięczny za pomoc. Pozdrawiam.
     
  2. Trybun

    Trybun Początkujący

    Wiadomości:
    9
    Docenione treści:
    3
    //Edit
    Już sam wykombinowałem.
    Jakby ktoś potrzebował to:
    $product->galleryImages.0->unic_name

    gdzie " .0 " jest numerem tablicy. Więc 0 wywoła pierwsze zdjęcie, 1 - drugie, 2 - trzecie itd.
     
  3. Stau

    Stau Majster

    Wiadomości:
    340
    Docenione treści:
    98
    Hmmm - a powiedz mi proszę - jak "wyczarowałeś" nazwę owej tablicy. Pytam, bo też często borykam się z takimi sytuacjami, kiedy zwyczajnie nie mogę znaleźć "dojścia" (ścieżki w smarty) bądź "nazwy" zmiennej, która za coś odpowiada. Zwłaszcza, że jedyna dokumentacja sklepowa jest leciwa i "wybrakowana":
    http://tech.sklep-pomoc.home.pl/style-graficzne

    W Twoim przypadku pierwotnie "wertowałbym" product->index.tpl oraz product->gallery.tpl . Tam jednak ciężko znaleźć "ślad" nazwy wspomnianej tablicy.

    --------

    Nie tak dawno padło pytanie o zmienną odpowiadającą za ilość osób, które oceniły jakiś produkt. Okazało się, że ścieżka jest taka:
    $product->vote->votes
    https://forum.home.pl/threads/vote-rate-nie-dziala-modyfikacja.639/

    Czasami tych nazw zmiennych "domyślam się" na podstawie "podobnych" zapisów w smarty szablonach i "Centrum Wymiany Danych" (np. rank_votes). Nie do wszystkiego jednak w ten sposób można dojść.
     
  4. Trybun

    Trybun Początkujący

    Wiadomości:
    9
    Docenione treści:
    3
    Cześć.
    Poszperałem trochę w plikach odpowiadających za wyswietlanie produktów i znalazłem w pliku tableofproducts.tpl tą formułę i metodą prób i błędów ogarnąłem jak algorytm odczytuje index tabeli.
    Generalnie korzystam z dokumentacji która jest pod tym adresem: http://tech.clickshop.pl/api
     
    Ostatnia modyfikacja: 29 Grudzień 2015
  5. TheL

    TheL @Lider VIP Beta-tester

    Wiadomości:
    2 403
    Docenione treści:
    535
    chyba dokumentacja api to jedyne miejsce gdzie można znaleźć rzeczy które często mogą się przydać.
    @Trybun gratuluję pomysłu i rozwiązania :)
     
  6. Trybun

    Trybun Początkujący

    Wiadomości:
    9
    Docenione treści:
    3
    @TheL Nie jest to jedyne miejsce. Polecam jeszcze dokumentacje frameworka Smarty - niestety tylko w j.ang. lecz bardzo się przydaje :)
     
  7. TheL

    TheL @Lider VIP Beta-tester

    Wiadomości:
    2 403
    Docenione treści:
    535
    Nad Smarty aktualnie siedzę poważniej, czas swojego CMSa przerobić wreszcie na system szablonów :)
     
  8. Trybun

    Trybun Początkujący

    Wiadomości:
    9
    Docenione treści:
    3
    @TheL Aż Cię zaobserwuję, może dowiem się czegoś ciekawego :)

    na marginesie, wrzucam kod który może się przydać wielu osobą do swojego sklepiu, zmieniamy w tableofproducts.tpl wyswietlanie produktów, z tym kodem po najechaniu myszką zdjęcie zmienia się na drugie w kolejności i po zjechaniu myszki wraca do pierwszego.
    Kod:
    <img src="{imageUrl type='productGfx' width=$skin_settings->img->medium height=$skin_settings->img->medium image=$product->galleryImages.0->unic_name overlay=1}" {if $product->galleryImages|@count >= 2}onmouseover="this.src='{imageUrl type='productGfx' width=$skin_settings->img->medium height=$skin_settings->img->medium image=$product->galleryImages.1->unic_name overlay=1}'" onmouseout="this.src='{imageUrl type='productGfx' width=$skin_settings->img->medium height=$skin_settings->img->medium image=$product->galleryImages.0->unic_name overlay=1}'" {/if} alt="{$product->translation->name|escape}" /> 
    Więcej informacji o tej modyfikacji można znaleźć tutaj: https://forum.home.pl/threads/po-na...wyswietlane-jest-drugie-zdjecie-produktu.678/
     
    Mariusz lubi to.
  9. TheL

    TheL @Lider VIP Beta-tester

    Wiadomości:
    2 403
    Docenione treści:
    535

Poleć forum znajomym