Google Indexing API voor Magento 2
€ 50,00 € 50,00
Kowal_Blog is een blogmodule voor Magento 2 die anders is ontworpen dan klassieke blogextensies. In plaats van een apart systeem voor berichten, aparte categorieën en aparte routing te bouwen, benut de module het potentieel van de Magento-catalogus.
Blogcategorieën zijn standaard cataloguscategorieën en een blogbericht is een product van het speciale type blog_post. Daardoor werkt de blog dicht op de Magento-mechanismen die de shop al heeft en die goed geïntegreerd zijn met de frontend, SEO, store views, cache en administratie.
De belangrijkste eigenschap van de module is het gebruik van de Magento-catalogus als engine voor het publiceren van content.
De module voegt een nieuw producttype toe:
blog_postHet type blog_post is gebaseerd op het gedrag van een virtueel product, maar is niet bedoeld voor verkoop. Het bericht rendert geen prijs, winkelwagen, voorraadgegevens of koopelementen. Vanuit het perspectief van Magento blijft het echter een catalogusentiteit, waardoor het gebruik kan maken van bestaande catalogusfuncties.
Deze aanpak combineert twee zaken:
Veel blogmodules creëren een aparte wereld naast Magento: aparte tabellen voor berichten, aparte categorieën, aparte routing, aparte SEO en aparte integraties. Dat betekent vaak meer code, meer uitzonderingen en meer onderdelen die onderhouden moeten worden.
Kowal_Blog kiest de tegenovergestelde richting. De module gebruikt wat Magento al goed doet:
Daardoor is de blog geen losstaande toevoeging, maar een natuurlijk onderdeel van de Magento-shop.
Berichten gebruiken de native SEO-velden van Magento:
url_key,meta_title,meta_description,meta_keyword.De module genereert ook structured data die zijn afgestemd op blogcontent, zoals BlogPosting, CollectionPage, ItemList en BreadcrumbList. Tegelijkertijd verwijdert de module productgerichte structured data op plaatsen waar een bericht niet als verkoopproduct behandeld moet worden.
Blogcategorieën zijn cataloguscategorieën. De beheerder wijst één categorie aan als root van de blog en de subcategorieën daarvan worden blogcategorieën.
Zo kan een logische contentstructuur worden gemaakt, bijvoorbeeld:
De module vereist geen apart model voor blogcategorieën en geen apart basismodel voor berichten. Dit beperkt de hoeveelheid maatwerkcode en verkleint het risico op conflicten met Magento-mechanismen.
Een blogbericht wordt op vergelijkbare wijze gemaakt als een product. De beheerder werkt in het bekende Magento-formulier, maar met attributen die zijn afgestemd op content:
Omdat de inhoud van een bericht is gebaseerd op productattributen, kunnen de standaard Magento-mechanismen voor waarden per store view worden gebruikt.
De lead van het bericht gebruikt het native veld:
short_descriptionDe hoofdinhoud van het bericht gebruikt het native veld:
descriptionDit vereenvoudigt vertalingen en het beheer van meertalige content.
De module voegt het producttype blog_post toe, gebaseerd op het gedrag van een virtueel product. Het type is bedoeld voor het publiceren van content, niet voor verkoop.
Tijdens de installatie wordt de attribuutset Blog Post aangemaakt, met native Magento-velden en aanvullende redactionele velden.
De module gebruikt bestaande Magento-attributen waar dat logisch is:
name als berichttitel,short_description als lead,description als inhoud,image als hoofdafbeelding,url_key als URL,In de moduleconfiguratie wijst de beheerder de hoofdcategorie van de blog aan. Deze categorie is de startpagina van de blog en de subcategorieën ervan zijn blogcategorieën.
De module ondersteunt meerdere varianten voor het tonen van de lijst:
Elke variant kan de afbeelding van het bericht, de titel, de publicatiedatum, de auteur, de lead en de link naar het bericht tonen.
De berichtpagina rendert de inhoud als artikel, niet als verkoopproduct. De berichttemplate toont:
De module levert een blogsidebar met blokken voor:
De sidebar werkt met native Magento-lay-outs:
1column,2columns-left,2columns-right.De beheerder kan een aparte lay-out instellen voor:
Daardoor kan de blog een andere lay-out hebben dan standaard productcategorieën.
In veel shops verschijnen op productpagina's extra blokken, bijvoorbeeld levertijd, leveranciersiconen, vergelijker, wishlists of voorraadgegevens.
Met de module kunnen namen van lay-outblokken worden opgegeven die alleen in de blogcontext verwijderd moeten worden. Zo blijft de artikelweergave schoon zonder gewone productpagina's aan te passen.
De module genereert structured data die geschikt zijn voor een blog:
BlogPosting voor het bericht,CollectionPage en ItemList voor lijsten,BreadcrumbList voor navigatie.Dit is belangrijk, omdat het bericht technisch gezien een Magento-product is, maar voor zoekmachines een artikel moet zijn.
De module is een goede keuze voor Magento-shops die een blog willen beheren zonder een apart contentsysteem te bouwen.
De module past vooral goed bij:
Het grootste voordeel van de module is dat deze Magento niet probeert te vervangen door een apart blog-CMS. In plaats daarvan gebruikt de module de Magento-catalogus als solide basis voor content.
Dankzij het producttype blog_post krijgt de blog de flexibiliteit van redactionele content en profiteert hij tegelijkertijd van de volwassen catalogusmechanismen van Magento.
Dit document beschrijft de installatie van de module Kowal_Blog en de betekenis van de configuratievelden die beschikbaar zijn in het Magento-paneel.
De module is bedoeld voor Magento 2.4.x.
Vereiste Magento-modules:
Magento_Catalog,Magento_CatalogUrlRewrite,Magento_Eav,Magento_Store.De module wordt geïnstalleerd als Composer-pakket:
kowal/module-blogVoeg de Composer-repository toe:
composer config repositories.module.kowal.blog vcs https://github.com/kowalco/blogAls de repository privé is, voeg dan een GitHub-token toe:
composer config --global --auth github-oauth.github.com Installeer de module:
composer require kowal/module-blogSchakel de module in:
bin/magento module:enable Kowal_BlogVoer de upgrade uit:
bin/magento setup:upgradeLeeg de cache:
bin/magento cache:flushVoer in productiemodus daarnaast uit:
bin/magento setup:di:compilebin/magento setup:static-content:deploybin/magento indexer:reindexTijdens de installatie maakt de module het volgende aan:
blog_post,Blog Post,Catalog > CategoriesBlogBlog / PoradnikiBlog / AktualnościBlog / SEOurl_key hebben.De configuratie bevindt zich in:
Stores > Configuration > Kowal > BlogDe configuratie is verdeeld in drie secties:
General,Design,Sidebar.Schakelt de module op de frontend in of uit.
Waarden:
Yes - de module werkt,No - de module voegt geen bloggedrag toe.Geeft de hoofdcategorie van de blog aan.
De geselecteerde categorie heeft twee rollen:
Voorbeeld:
Default Category / BlogSubcategorieën onder deze categorie worden behandeld als blogcategorieën.
Aantal berichten dat op één listingpagina wordt weergegeven.
Voorbeeld:
12De waarde moet een getal groter dan nul zijn.
Bepaalt hoe de lijst met blogberichten wordt gepresenteerd.
Beschikbare waarden:
List - klassieke berichtenlijst,Grid - 2 Columns - grid met 2 kolommen,Grid - 3 Columns - grid met 3 kolommen,Grid - 4 Columns - grid met 4 kolommen.Elke variant toont de berichtafbeelding, titel, publicatiedatum, auteur, lead en link naar het bericht.
Bepaalt of berichten met een publicatiedatum in de toekomst zichtbaar moeten zijn in lijsten.
Waarden:
Yes - toekomstige berichten zijn zichtbaar,No - toekomstige berichten zijn verborgen.Aanbeveling voor productie:
NoDwingt de paginalay-out af voor de blogstartpagina en blogcategorieën.
Beschikbare waarden:
Use Magento Default,1 Column,2 Columns with Left Sidebar,2 Columns with Right Sidebar.Als u een tweekoloms lay-out kiest, wordt de blogsidebar gerenderd volgens de gekozen zijde.
Dwingt de paginalay-out af voor een blogbericht.
Beschikbare waarden:
Use Magento Default,1 Column,2 Columns with Left Sidebar,2 Columns with Right Sidebar.Deze instelling is handig wanneer blogberichten een andere lay-out moeten hebben dan gewone producten.
Lijst met lay-outblokken die op blogcategoriepagina's moeten worden verwijderd.
Voer één bloknaam per regel in.
Voorbeeld:
catalog.compare.sidebarwishlist_sidebarGebruik dit veld als externe modules elementen toevoegen aan blogcategorieën die typisch bij producten horen.
Lijst met lay-outblokken die op blogberichtpagina's moeten worden verwijderd.
Voer één bloknaam per regel in.
Voorbeeld:
catalog.compare.sidebarwishlist_sidebarproduct.info.upsellcatalog.product.relatedproduct.info.reviewproduct.info.socialDit veld is handig om elementen te verbergen zoals:
Schakelt het blok met blogcategorieën in de sidebar in.
Het blok toont categorieën die onder de geconfigureerde blogrootcategorie staan.
Schakelt het blok met recente berichten in de sidebar in.
Berichten worden gesorteerd op publicatiedatum.
Bepaalt het aantal recente berichten dat zichtbaar is in de sidebar.
Voorbeeld:
5Schakelt het tagblok in de sidebar in.
Tags komen uit het attribuut:
blog_tagsDit is een attribuut van het type multiselect.
Catalog > ProductsBlog PostBlog PostName - berichttitel,SKU - technische identificatie,URL Key - URL,Short Description - lead,Description - volledige inhoud,Image - hoofdafbeelding,Meta Title,Meta Description.Published At,Author Name,Post Format,Tags,Reading Level, indien gebruikt,Featured, als het bericht uitgelicht moet worden.Elk bericht moet uniek zijn voor:
Name,URL Key,Meta Title,Meta Description.Het veld Short Description moet een korte, unieke lead zijn en geen kopie van de eerste alinea van de inhoud.
Het veld Description moet de volledige inhoud van het bericht bevatten met een logische koppenstructuur.
De berichtafbeelding moet een zinvol label hebben, omdat de module dit gebruikt als alt en title. Als het afbeeldingslabel niet is ingesteld, wordt de naam van het bericht als fallback gebruikt.
De module rendert afbeeldingen met de attributen:
alt,title,width,height.Links van het type Read more in lijsten worden gemarkeerd als:
rel='nofollow'De belangrijkste indexeerbare link blijft de titel van het bericht.
Controleer na installatie en configuratie:
BlogPosting zijn en niet Product,Na wijzigingen in de configuratie is het raadzaam om uit te voeren:
bin/magento cache:clean config layout block_html full_page