Comerțul cu Drupal

Nu-mi plac magazinele și până în ultima oară am încercat să nu iau comenzi pentru dezvoltarea de magazine online. Nu este ceea ce nu pot face față, ci în faptul că am crezut întotdeauna și cred că există o lucrare pe care ar trebui să o facă profesioniștii. Sunt o persoană naivă. Recent, m-am uitat la ce magazine fac clienții. Din aceasta vreau să plâng, și de la calitate și pentru ce bani, totul este făcut. Domnilor, asta e rahat! Nici măcar nu vorbesc despre șablonul Bitrix și despre magazinul nostru din Bielorusia, el sa născut nenorocit, dar ce fac faimoasele studiouri de design web ... Ugh, asta-i tot.

În general, am început să lucrez cu Drupal Commerce, încerc să fac bine. Și, ca de obicei, blocat într-o situație neobișnuită. După cum știți, dacă lucrați cu un comerciant, bunurile din acest sistem sunt compuse din 2 părți. Și orice spun ei, e foarte inteligent. Prima parte este entitatea "Bunuri" care este creată atunci când modulul este instalat. Al doilea este nodul standard (Product Display), care afișează bunurile pentru vizitator. În mod separat, cumpărătorul nu văd bunurile decât prin nod. Pentru ce? Pentru a putea combina mai multe produse într-una.

De exemplu, vindem cizme de cauciuc. Să presupunem că există cizme numite "Ivanushka". Ivanushka are mai multe culori, dimensiuni și chiar stiluri. Valoarea bunurilor depinde de stil. Deci, mai bine creați mai multe produse - Ivanushka pentru femei, Ivanushka pentru copii, Ivanushka pe platformă, Ivanushka pentru bărbați etc. Și toate aceste stiluri se combină într-o singură expunere a bunurilor, astfel încât utilizatorul să aleagă mai întâi stilul, să vadă prețul și numai apoi să pună cizmele în coș. Se pare că totul este simplu și standard. Pentru produs folosim câmpurile: preț, articol, depozit (câmpurile care au fost deja create implicit) și câmpuri care se referă la acest stil particular: înălțime, culoare, imagine etc. În nodul "Afișare bunuri", vom crea câmpuri care se aplică tuturor Ivanushka. De exemplu: marca de cauciuc, producător, țară etc. În general, totul este simplu.

Dar problema este că domeniul de imagine trebuia să fac și în afișarea bunurilor. Afișați mai multe fotografii generale de cizme. Am adăugat câmpul, dar nu este foarte civil să îl afișeze în nod. Pe pagina de afișare a produsului sunt 2 câmpuri de imagine. Unul din nodurile "Afișarea mărfurilor", al doilea din entitatea "Bunuri". În plus, încă mai trebuie să fac acest lucru astfel încât utilizatorul să aleagă mai întâi culoarea, iar culoarea nu este din taxonomie, ci din culoarea imaginii produsului. Acesta este modul în care ar trebui să arate galeria de imagini a produsului.

Comerțul cu Drupal

Roșu este câmpul "Imagine" din entitatea "Bunuri", albastru, același câmp de la nodul "Afișare mărfuri". Și opțiunile de culoare:

Comerțul cu Drupal

Fiecare miniatură, acesta este un produs separat, cu preț propriu și făcând clic pe el, în partea de sus a paginii prima imagine din galerie ar trebui să se schimbe:

Comerțul cu Drupal

În general, totul este confuz, dar am făcut-o. Utilizatorul selectează clicurile de culoare de pe imaginea de mai jos și acest produs intră în coș, făcând clic pe butonul "Puneți în coș".

Vreau doar să vă avertizez, dacă știți PHP bine, această soluție nu este pentru tine. Soluția este destul de confuză, o viziune este încorporată în alta, iar alta în a treia. Deși fără ultima vedere puteți să o faceți fără. Cererile adevărate în ele sunt simple și cred că nu vor crea o încărcătură, mai ales cu caching-ul. Nu voi picta în detaliu, cred că știi vederi. În general, hai să mergem.

1. În primul rând, instalați modulul URL-uri pentru produse de comerț. El va face adresa URL pentru fiecare produs. Link-urile obișnuite din magazin sunt identice, indiferent de configurația de produs pe care ați ales-o: / content / detskaya-kolyaska-verdi-vanga. Acest modul poate face acest lucru: / content / detskaya-kolyaska-verdi-vanga? Sku = DK1. Setările modulului pentru mine sunt:

Comerțul cu Drupal

2. În continuare, vom scoate toate miniaturile, mărfurile. Creați o vizualizare "Produs de Comerț", să o numim "Alegerea culorii".
Adăugați linkul "Commerce Commodity: Referencing Material".
Adăugați un filtru de context cu acest link "(Materialul de referință a produselor de la field_product) Conținut: Nid", treceți valoarea implicită, ID-ul materialului de la adresa URL.
Adăugați următoarele câmpuri:
(Material referitor la produse de la field_product) Conținut: Cale
Commerce Produs: Articol
Câmp: Setări imagine - ieșire după cum doriți și activați opțiunea "Imprimați acest câmp ca legătură", cale

Asta este, făcând clic pe miniatură, vom rămâne pe aceeași pagină, dar sku se va schimba, va fi transferată în forma coșului și în vizualizarea următoare, în funcție de ce culoare, adică bunurile pe care le-am ales.

Comerțul cu Drupal

Comerțul cu Drupal

După cum puteți vedea, există 2 câmpuri de imagine identice. Primul este:

Comerțul cu Drupal

Comerțul cu Drupal

Nu voi picta totul în detaliu, pentru mult timp, veți înțelege.

Următorul câmp - textul personalizat conține următoarele:

Comerțul cu Drupal

Apoi m-am confundat cu imaginile. Pentru zoom, în imaginea activă, folosim o imagine mare (data-zoom-image = "[field_image]"), cel mai probabil veți fi corect (data-zoom-image = "[field_image_1]"). În general, aveți în minte, totul este simplu. În galerie există 3 tipuri de imagini: mari, medii și miniaturi. Am făcut totul amestecat, pentru că a trebuit să fac totul prin tastarea și rescrierea de mai multe ori.

Comerțul cu Drupal

Și principalul lucru în această vizualizare este filtrul (Produse la care se face referire pe produs_produs) Comerț Produs: Articol (neînchis). În principiu, filtrul obișnuit deschis, dar toată viclenia în identificatorul filtrului:

Comerțul cu Drupal

și așa arată în pagină:

Comerțul cu Drupal

Pur și simplu ascundem filtrul în CSS ca fiind inutil.

5. Următorul ecran "Imagine produs (1)". Îl clonem de la cel precedent (cel care afișează galeria), șterge linkul și adaugă încă o imagine.

Comerțul cu Drupal

Prima imagine avem cu stilul de 600, al doilea original, iar al treilea 100. Inutil să mai spunem, toate imaginile sub forma unei adrese URL.

În textul utilizatorului este:

Ieșirea vizualizării este redefinită (Subiect: Informații):

Comerțul cu Drupal

Eliminăm toate inutile, lăsăm doar capacul, câmpurile și îl înfășurăm în div:

În antet, ultimul vyuha, „Produs de imagine (2)“, dar utilizarea sa nu este obligatorie. Afișează prima miniatură din galerie și asta-i tot.

Comerțul cu Drupal

6. Vezi "Imaginea produsului (2)" și clona. Totul este pe modelul celui precedent, doar cu o legătură.

Comerțul cu Drupal

Acordați atenție navigatorului Pager. Undeva, doar 1 element este ieșit, în altă parte. În consecință, sunt setate setările pentru mai multe câmpuri ale imaginii. În vizualizarea "Imaginea produsului (1)" din câmpurile de imagine, dezactivați caseta de selectare "Afișați toate valorile într-o singură linie" și afișați navigatorul "Afișați toate elementele | Toate elementele". Și în "Imaginea produsului (2)" și cea mai importantă, "imgtov", vom include și vom afișa numai 1 imagine, iar navigatorul acolo "Afișează numărul specificat de elemente | 1 element".

7. Totul. Acum, toată această urâciune deducem într-un nod de șabloane - AS_TAM_U_VAS.tpl.php astfel:

Ugh, gata. M-am săturat să scriu.







Articole similare

Trimiteți-le prietenilor: