Een inleiding tot Magento Design-terminologie en concepten

Ben je een Magento-beginner? Wilt u een eigen thema maken? Als dit het geval is, is dit artikel speciaal voor u geschreven. 

Om te beginnen met Magento-themaontwerp en -aanpassing, is het erg belangrijk dat u een goed begrip hebt van de ontwerpterminologie van Magento en de basisbegrippen van de controlestroom van Magento.

Voordat we beginnen, is het de moeite waard om een ​​paar dingen rond Magento-versies te verduidelijken, omdat de toepassing in twee verschillende smaken verkrijgbaar is: Community-editieen Bedrijfseditie. Dit artikel ondersteunt de volgende versies van Magento:

  • Gemeenschapsversie 1.4+
  • Enterprise editie versie 1.8+    

Om alles te begrijpen dat we behandelen, moet je al een geïnstalleerd exemplaar van Magento hebben geïnstalleerd (wat je hier kunt krijgen). Als je al een goed begrip hebt van het Magento-dashboard, heb je waarschijnlijk een gemakkelijkere tijd om deze tutorial te volgen.

Zo niet, geen probleem. We zullen in het hele artikel alle details behandelen.

Een overzicht van de Magento-hiërarchie

Voordat we ingaan op de eigen ontwerpterminologie, is het erg belangrijk om het winkelhiërarchieconcept te begrijpen. Een van de belangrijkste functies van Magento is dat het de creatie en manipulatie van meerdere winkels en winkelweergaven in één installatie ondersteunt. 

Laten we deze basisvoorwaarden bekijken en verder gaan in detail:

  • Globaal verwijst naar uw volledige Magento-installatie.
  • Website verwijst naar groep winkels of slechts één winkel die klantinformatie, bestelinformatie en winkelwageninformatie kan delen of geen informatie kan delen.
  • winkel zijn kinderen van de website en verzameling winkelweergaven. Het belangrijkste doel van winkels is om logisch gerelateerde winkelweergaven te beheren, meerdere winkels onder één website toe te staan ​​en een individuele catalogusstructuur in te stellen.
  • Winkel weergaven zijn kinderen van winkels. Elke winkel heeft één winkelweergave of meerdere winkelweergaven. Winkelweergaven worden voornamelijk gebruikt voor meerdere representaties van dezelfde gegevens. Meestal worden ze gebruikt voor het weergeven van winkels die meerdere talen ondersteunen. 

Hier kunt u zien dat één website één winkel of meerdere winkels kan hebben en één winkel één winkelweergave of meerdere winkelweergaven kan hebben. Een standaardscenario zou de hoofdwebsite, de hoofdwebsite-winkel en de standaard winkelweergave zijn. 

Als je Magento al hebt geïnstalleerd en ingesteld, navigeer dan naar het Magento admin panel en wijs dan naar Systeem tab. Op die pagina, linksboven in het bovenste menu, zie je de Huidige configuratiebereikdrop down - dit toont het standaardscenario van uw Magento-winkel.

                                               

Laten we verschillende scenario's bekijken om meer inzicht te krijgen in de weergave van websites, winkels en winkels.

Eerste scenario: één winkel

Laten we zeggen dat je kleding voor mannen en vrouwen wilt verkopen. Als startup wilt u geen afzonderlijke catalogi of ondersteuning voor meerdere talen aanbieden voor uw winkel. In dat geval zou het scenario één website, winkel en standaard winkelweergave bevatten.

Tweede scenario: meerdere winkels

Stel nu dat u kleding voor mannen en vrouwen in verschillende winkels wilt verkopen en dat u klantbestellingen en winkelinformatie van klanten wilt delen. Op deze manier kunnen klanten een account aanmaken in een van de winkels en hebben ze nog steeds toegang tot al hun informatie op één locatie.

Merk op dat u nog steeds niet meerdere talen wilt ondersteunen. In dit geval zou dit scenario één website zijn: een herenkledingwinkel, een dameskledingwinkel en een standaard winkelweergave.

Derde scenario: meerdere websites, meerdere winkelweergaven

Naarmate uw bedrijf groeit, wilt u het misschien uiteindelijk uitbreiden zodat het een accessoireswinkel biedt die aansluit op uw kledingwinkel. 

Bovendien wilt u in elke winkel klantinformatie delen en meerdere talen ondersteunen. Dit scenario bevat twee websites en twee winkels: 

  1. Kleding
  2. Accessoires

Dit resulteert in twee winkelweergaven: een Engelse winkelweergave en een Spaanse winkelweergave.

mogelijkheden

De mogelijkheden om een ​​exemplaar van een website, een winkel en winkelweergaven te maken, zijn afhankelijk van uw behoeften. U kunt zo veel of zo weinig websites, winkels en weergaven opslaan als u wilt Magento Admin Panel> Systeem> Winkels beheren.

Magento Design: Interfaces & Thema's

We hebben gezien dat Magento ons toestaat om meerdere winkels in één Magento-opstelling in te stellen. Op basis daarvan kunnen we ook een andere look geven aan verschillende websites, winkels en winkelweergaven. Dit is mogelijk via Thema's. We kunnen zoveel thema's maken als we willen en we kunnen ook verschillende thema's toepassen op verschillende winkels.

EEN Ontwerppakket verwijst naar verzameling van verschillende thema's. Ga naar je Magento-map app / design / frontend.Hier ziet u het "Base" -pakket. Dit is het standaardpakket dat bij Magento wordt geleverd. Dit pakket heeft een andere naam binnen elke versie van Magento. In de Communityeditie is dit pakket bijvoorbeeld "Base", in de Pro-editie is dit pakket "Pro" en in de Enterprise-editie is het "enterprise" genoemd. 

Bovendien kunt u hieronder uw eigen pakket toevoegen voorkantdirectory. In eerdere versies van Magento worden ontwerppakketten verwezen naar interfaces.

Thema's zijn een verzameling bestanden - dat wil zeggen sjablonen en skins - die de daadwerkelijke lay-out aan de voorkant zullen weergeven. Op basis van onze behoeften kunnen we de lay-out wijzigen door nieuwe sjabloonenbestanden in bepaalde thema's te bewerken en te maken. 

Eén ontwerppakket kan meerdere verwante thema's hebben, maar het wordt aanbevolen dat elk pakket een Standaard themastandaard te renderen wanneer Magento geen ander thema kan vinden.

Meer over thema's

Elk thema in Magento heeft twee soorten mappen:

  1. De sjabloongids bevat layout, sjabloon en lokale submap onder app> ontwerp> frontend> uw themapakket> uw thema.
           
    De layout
     map bevat de XML-bestanden die worden gebruikt om de basisblokstructuur van thema's te maken.

    De sjabloon
     map bevat alle PHTML (PHP + HTML) bestanden die worden gebruikt om de eigenlijke HTML van thema's te maken. Sjabloonbestanden maken ook PHP-code mogelijk, zodat we dynamische HTML-pagina's kunnen maken
    De locale map bevat CSV-bestanden die voornamelijk worden gebruikt voor het opslaan van meerdere talen gerelateerde strings om meerdere talen te ondersteunen om op te slaan.
  2. De huiddirectory bevat subdirectory's van CSS, JavaScript en afbeeldingen onder skin> frontend> uw themapakket> uw thema.

    CSS bevat alles css bestanden met betrekking tot dat specifieke thema.

    JS bevat alles js bestanden met betrekking tot dat specifieke thema.
    Afbeeldingen bevat alle afbeeldingen met betrekking tot een bepaald thema.                                                     

Thema-variaties

Met Magento kunnen we zoveel mogelijk themavarianten maken. Wanneer u met meerdere winkels werkt, kunt u verschillende themavariaties toewijzen aan verschillende winkels. U kunt themavariaties maken door het standaardthema naar een nieuw thema te kopiëren en kleine CSS-variaties op dat nieuwe thema toe te passen.

Laten we bijvoorbeeld zeggen dat u twee winkels hebt gemaakt die dezelfde informatie delen, maar u wilt dat de klant een verschil ervaart in termen van de kleur en indeling van beide winkels. In dat geval kunt u twee themavariaties maken, geef ze elk een ander css, js, en afbeeldingen en vervolgens toepassen op individuele winkels.

Een opmerking over het standaardthema

Zoals eerder in dit artikel is vermeld, is het aanbevolen dat u een standaardthema hebt in elk ontwerppakket. Omdat wanneer u geen thema aan uw winkel hebt toegewezen, Magento naar het standaardthema zal zoeken volgens het thema terugvalsysteem(die we in de volgende sectie zullen bespreken). Als dit het standaardthema niet vindt, wordt er een 404-fout geretourneerd.
Als u met een nieuwe Magento-installatie werkt, gebruikt deze het "Base" -pakket dat ook het standaardthema bevat. Voor alle vereiste bestanden die niet worden gevonden in uw standaardthema, wordt het standaardthema van het basispakket weergegeven. 

Het is erg belangrijk dat uw standaardthema alle vereiste bestanden bevat.

Thema Terugval Systeem

Wanneer u met Magento-thema's werkt, is het belangrijk om het Magento-thema fallback-systeem te begrijpen; anders kun je verdwalen in de Magento-themadirectory wanneer je probeert te achterhalen welke blokken de bestanden van het thema weergeven.

Als uw aangepaste thema bijvoorbeeld om een ​​bestand vraagt, bijvoorbeeld header.phtml, die je header zal weergeven, zal Magento naar het bestand zoeken met behulp van het volgende diagram:

Zoals in het diagram zal het fallback-systeem eerst in je aangepaste themamap verschijnen. Als het niet wordt gevonden, wordt er naar een standaardthema gekeken dat zich in hetzelfde pakket bevindt als uw aangepaste thema. Als het ook niet wordt gevonden in het standaardthema van uw ontwerppakket, zal het kijken naar het standaardthema van het basispakket. Als Magento via dit proces het specifieke bestand niet kan vinden, geeft het een foutmelding.

In eerdere versies van Magento bevatte het fallback-systeem het Base-pakket niet als laatste onderdeel van het fallback-systeem. In eerdere versies zou het fallback-systeem alleen naar een specifiek themapakket zoeken.

Door het Base-pakket in het fallback-systeem op te nemen, kunnen we met Magento ons thema eenvoudiger onderhouden met alleen de vereiste bestanden. Stel bijvoorbeeld dat u een geheel andere vormgeving wilt toepassen van uw twee winkels, behalve de pagina's van de klantaccounts. Dit is mogelijk door twee themavariaties te maken en gebruik te maken van het fallback-systeem.

Om dit te bereiken, moet u twee themavarianten en één standaardthema maken dat alle vereiste bestanden bevat. Daarbij bevat uw ontwerppakket één standaardthema en twee themavariaties. 

Uw twee themavariaties moeten alle bestanden bevatten die u hebt aangepast voor de pagina's van het klantaccount (zoals deze beide thema's gemeen hebben). Op deze manier, wanneer Magento begint met het renderen van de bestanden van uw specifieke thema, zal dit terugvallen op de klantaccountpagina's van het standaardthema omdat ze niet zijn gedefinieerd in ons eigen thema.

Blokken en lay-outs

Blokken en lay-outs kunnen nieuwe termen voor u zijn, maar om een ​​succesvolle Magento-ontwerper te zijn, moet u deze concepten begrijpen.

Blocks

Blokken zijn de belangrijkste entiteit waarmee Magento de front-end lay-out rendert. Door het gebruik van blokken, onderscheidt Magento verschillende delen van lay-outs. In principe zijn er twee soorten blokken.

Structurele blokkenzijn de hoofdlijnen van elke front-end lay-out in Magento.Meestal bevatten ze de kop-, linker-, rechter-, hoofd- en voettekst van een lay-out.

                                           

Inhoudsblokken zijn de eigenlijke blokken die zich binnen de structuurblokken bevinden om de uiteindelijke visuele uitvoer te produceren. Deze blokken presenteren de blokspecifieke functionaliteit via HTML. De Categorielijst, Productlijst, Subcategorieënlijst, Producttags, Homepage-productsecties, en zo zijn de inhoudsblokken binnen het structureel blok.

                                          

lay-outs

Ten slotte zijn lay-outs de XML-bestanden die uw pagina in kaart brengen met structurele blokken en inhoudsblokken. Elke lay-outbestanden bevatten de tags, waarmee u bepaalde blokken kunt besturen. 

Elke Magento-module heeft afzonderlijke lay-outbestanden, zodat u de module-specifieke lay-outs eenvoudig kunt beheren.

Conclusie

Dit artikel is bedoeld om een ​​uitgebreid begin te bieden over waar te beginnen met Magento-thema-ontwikkeling.

Heb je nog steeds vragen? Aarzel niet om opmerkingen, vragen of andere algemene feedback achter te laten in de commentaren!