Přihlásit se

Jak na strukturovaná data

13. lis 2018 19:28 #137666
Jak na strukturovaná data od Ernst
Joomla Expert
Snažím se trochu více zorientovat v mikrodatech.

Chápu co dělají a k čemu slouží.
Umím je testovat na search.google.com/structured-data/testing-tool .
Pročetl jsem si rozšíření www.tassos.gr/joomla-extensions/google-structured-data-markup
Našel jsem si k tomu dobrý článek schema.org/docs/gs.html

chápu zadání hodnot pomocí itemscope a itemprop (třeba v šabloně K2), ale nejsem si schopen propojit, jaká data a s jakou hlavičkou tam mám uvést, zda mají nějakou strukturu nebo je to celkem jedno, kolik a čeho tam uvedu.

Můžete mě někdo nakopnout?

13. lis 2018 20:14 #137670
Odpověď od Ernst
Joomla Expert
Začal jsem si to testovat na příkladu itemu K2 - github.com/kricore/Advanced-templating-w.../default/item.php#L1
Je to upravený výpis položky K2 s vytvořením rich snippets.

Našel jsem i klíčová slova, která se mají/mohou použít. Je to v návaznosti na použité schéma schema.org/Article .
Tak si v tom zdroji provádím změny a testuji jak se to chová test

13. lis 2018 20:50 #137673
Odpověď od Rudolf
Joomla Expert
> pleteš se v nové verzi je to již i pro vybrané kategorie viz.

Ani tohle mi nevyhovuje. Já prostě používám typ článku

- recept
- faq
- testimonial
- článek
- poradna

a nechci být limitovaný na kategorii.

co se týká informací jak co a jak, bohužel je to o procházení schema.org/docs/gs.html , úpravě šablony a testování.

Třeba na recepty jsem šablonu dělal celý víkend a aktuálně ji musím znovu doplnit o nutriční hodnoty.

Výhoda je, že informace vkládá administrátor článku ihned při tvorbě článku a nemusí tedy chodit někam do další komponenty Google Structured Data.

MiniJoomla! - www.minijoomla.cz - eshop s rozšířením Joomla/VM
Email Manager - aplikace na správu šablon emailů pro VirtueMart
Easy Feeder - aplikace na generování XML/CSV feedů a napojení na ERP pro VM
PragueClassicconcert - portál pro prodej vstupenek na systému Joomla

13. lis 2018 21:07 - 13. lis 2018 21:11 #137675
Odpověď od Ernst
Joomla Expert
jasně je to o testování.

Jako příklad uvedu, že tenhle kód
Code:
<meta itemprop="headline" content="<?php echo $this->item->title; ?>">
jsem ladil snad 20 minut, protože mi to dřív zobrazilo jen první slovo názvu.

Já mám totiž v k2 hodně šablon pro jednotlivé kategorie a nechci to tam vkládat do obsahu (to bych se upsal a udělal spoustu chyb) ale chci to tam dát jako blok meta značek, které pak jen rozkopíruji do jednotlivých šablon.

ještě poprosím o:

Dobře mají Rich Snippety řešené již výrobci některých šablon - například JoomlartJoomlart šablony již Rich Snippety obsahují automaticky a proto je to další důvod proč je na některé jednoduché weby používáme


Napiš prosím nějaké odkazy na ně. Generují se automaticky nebo se musí zadat ke každému článku? Ale pochybuji, že by fungovaly třeba na k2 nebo icagendu atd.
To už je myslím lepší sáhnout do php.

14. lis 2018 10:49 - 14. lis 2018 10:55 #137683
Odpověď od Ernst
Joomla Expert
rád bych se zeptal, zda je mi někdo schopen vysvětlit význam položky @ID v microdatech?
Nejsem to schopen ani srozumitelně vygooglit.
Mám následující dotazy:
1. je dobré tuto položku vytvořit?
2. položka je ve tvaru URL, ale má to být existující URL? Zde na stránkách je @id třeba www.joomlaportal.cz/jak-zacit/k2article , ale to je neexistující URL. Má být @id existující url článku?

zadat a naplnit si tuto položku umím

14. lis 2018 12:01 #137684
Odpověď od Rudolf
Joomla Expert
Joomlart:

ja-diner.demo.joomlart.com/index.php/en/...-youth-with-new-look

> @ID
Toto je špatná otázka :)

Prostě vyplníte položku a @ID se vyplní při testingu samo.

Příkladem je breadcrumbs, kde jsem přidával poslední položku item - viz zde:

Oprava Rich Snippets pro breadcrumb modul

MiniJoomla! - www.minijoomla.cz - eshop s rozšířením Joomla/VM
Email Manager - aplikace na správu šablon emailů pro VirtueMart
Easy Feeder - aplikace na generování XML/CSV feedů a napojení na ERP pro VM
PragueClassicconcert - portál pro prodej vstupenek na systému Joomla

14. lis 2018 12:12 - 14. lis 2018 12:12 #137685
Odpověď od Ernst
Joomla Expert
to právě není, že by se vždy vyplnilo @ID samo

kód
Code:
<article itemscope itemtype="https://schema.org/Article" itemid=""> <meta itemprop="headline" content="<?php echo $this->item->title; ?>"/> <meta itemprop="name" content="<?php echo $this->item->title; ?>"/> <meta itemprop="mainEntityOfPage" content="<?php echo $this->item->absoluteURL; ?>"/> <meta itemprop="inLanguage" content="<?php echo ($this->item->language === '*') ? JFactory::getConfig()->get('language') : $this->item->language; ?>" /> <meta itemprop="image" content="<?php echo JURI::base().$this->item->image; ?>"/> <span meta itemscope itemtype="https://schema.org/Person" itemprop="author" content="<?php echo $this->item->author->name; ?>"/><meta itemprop="name" content="<?php echo $this->item->author->name; ?>"/></span> <meta itemprop="datePublished" content="<?php echo $this->item->created; ?>"/> <meta itemprop="dateModified" content="<?php echo $this->item->modified; ?>"/> <span meta itemscope itemtype="https://schema.org/Organization" itemprop="publisher" content="Diochi"/><meta itemprop="name" content="Diochi"/></span> </article>
vytvoří položku @id s aktuální URL článku, ale
Code:
<article itemscope itemtype="https://schema.org/Article"> <meta itemprop="headline" content="<?php echo $this->item->title; ?>"/> <meta itemprop="name" content="<?php echo $this->item->title; ?>"/> <meta itemprop="mainEntityOfPage" content="<?php echo $this->item->absoluteURL; ?>"/> <meta itemprop="inLanguage" content="<?php echo ($this->item->language === '*') ? JFactory::getConfig()->get('language') : $this->item->language; ?>" /> <meta itemprop="image" content="<?php echo JURI::base().$this->item->image; ?>"/> <span meta itemscope itemtype="https://schema.org/Person" itemprop="author" content="<?php echo $this->item->author->name; ?>"/><meta itemprop="name" content="<?php echo $this->item->author->name; ?>"/></span> <meta itemprop="datePublished" content="<?php echo $this->item->created; ?>"/> <meta itemprop="dateModified" content="<?php echo $this->item->modified; ?>"/> <span meta itemscope itemtype="https://schema.org/Organization" itemprop="publisher" content="Diochi"/><meta itemprop="name" content="Diochi"/></span> </article>
nevytvoří položku @ID (rozdíl je jen v prvním řádku)

Něco k tomu je popsáno zde

14. lis 2018 12:20 #137686
Odpověď od Rudolf
Joomla Expert
Joomlaportal má nasazené Rich snippets jen na detail článku:

search.google.com/structured-data/testin...vky-a-sdileli-je-dal

@Typ == Article se zde vypní samo, pokud doplníte:
Code:
<article id="k2article" itemscope itemtype="http://schema.org/Article">

Důležité není to id="k2article", ale itemscope itemtype=" schema.org/Article "

@id == www.joomlaportal.cz/jak-zacit/k2article se zde vyplní samo:

protože se vyplní URL adresa kde jsem + ID z tagu

Tady si myslím že má autor chybu.


Správná implementace má být:
Code:
<article itemscope itemtype="http://schema.org/Article">

Protože v elementu Article na Schema @id není

MiniJoomla! - www.minijoomla.cz - eshop s rozšířením Joomla/VM
Email Manager - aplikace na správu šablon emailů pro VirtueMart
Easy Feeder - aplikace na generování XML/CSV feedů a napojení na ERP pro VM
PragueClassicconcert - portál pro prodej vstupenek na systému Joomla

14. lis 2018 12:23 #137687
Odpověď od Rudolf
Joomla Expert
Tady je ukázka jak jsem implementoval já:

search.google.com/structured-data/testin...-na-biostyl-ecoworld

MiniJoomla! - www.minijoomla.cz - eshop s rozšířením Joomla/VM
Email Manager - aplikace na správu šablon emailů pro VirtueMart
Easy Feeder - aplikace na generování XML/CSV feedů a napojení na ERP pro VM
PragueClassicconcert - portál pro prodej vstupenek na systému Joomla

14. lis 2018 12:25 - 14. lis 2018 12:26 #137688
Odpověď od Rudolf
Joomla Expert
Id se vyplní samo, pokud ho v tom tagu máte.

Je to opravdu chyba Google tester tools.

Ale je to taky chyba implementátora, tam vůbec id nemá co dělat.

Má si vytvořit nový obalový tag pro tag article, pokud to id potřebuje ke stylování.

MiniJoomla! - www.minijoomla.cz - eshop s rozšířením Joomla/VM
Email Manager - aplikace na správu šablon emailů pro VirtueMart
Easy Feeder - aplikace na generování XML/CSV feedů a napojení na ERP pro VM
PragueClassicconcert - portál pro prodej vstupenek na systému Joomla

14. lis 2018 12:29 #137689
Odpověď od Rudolf
Joomla Expert
> <meta itemprop="mainEntityOfPage" content="<?php echo $this->item->absoluteURL; ?>"/>

Máte špatně

správně

<meta itemscope itemprop="mainEntityOfPage" itemtype=" schema.org/WebPage " itemid="item->absoluteURL; ?>"/>

MiniJoomla! - www.minijoomla.cz - eshop s rozšířením Joomla/VM
Email Manager - aplikace na správu šablon emailů pro VirtueMart
Easy Feeder - aplikace na generování XML/CSV feedů a napojení na ERP pro VM
PragueClassicconcert - portál pro prodej vstupenek na systému Joomla

14. lis 2018 12:32 #137690
Odpověď od Rudolf
Joomla Expert
> <span meta itemscope itemtype=" schema.org/Organization " itemprop="publisher" content="Diochi"/>

Myslím že logo je povinná položka?

MiniJoomla! - www.minijoomla.cz - eshop s rozšířením Joomla/VM
Email Manager - aplikace na správu šablon emailů pro VirtueMart
Easy Feeder - aplikace na generování XML/CSV feedů a napojení na ERP pro VM
PragueClassicconcert - portál pro prodej vstupenek na systému Joomla

14. lis 2018 12:52 #137691
Odpověď od Linelabcz
Admin
Ahoj, spíš přemýšlím, jestli nerozdělit jednotlivé šablony dle sekcí jako schema.org/NewsArticle novinky a pro blogy uživatelů jako schema.org/BlogPosting

14. lis 2018 12:57 #137692
Odpověď od Rudolf
Joomla Expert
Ano, je to možné, inovaci se meze nekladou :)

MiniJoomla! - www.minijoomla.cz - eshop s rozšířením Joomla/VM
Email Manager - aplikace na správu šablon emailů pro VirtueMart
Easy Feeder - aplikace na generování XML/CSV feedů a napojení na ERP pro VM
PragueClassicconcert - portál pro prodej vstupenek na systému Joomla

14. lis 2018 13:11 #137693
Odpověď od Ernst
Joomla Expert
tak postupně od nejstaršího, abych se v tom vyznal:

Tady si myslím že má autor chybu.
Protože v elementu Article na Schema @id není


v těch ukázkách jsem autorem já B)
pokud je kód
1. <article itemscope itemtype=" schema.org/Article "> - nevyplní se @ID
2. <article itemscope itemtype=" schema.org/Article " itemid=""> vyplní se @ID aktuálním url článku (nebo mohu dát itemid="/test" a @ID vyplní doménou rozšířenou o "/test".

Sám si ale myslím, že tam $ID nemá co dělat, ale viděl jsem to na několika webech (včetně joomlaportálu), tak jsem se po tom pídil

Tady je ukázka jak jsem implementoval já:

Fajn, mohu to vzít jako vzor?

> <meta itemprop="mainEntityOfPage" content="<?php echo $this->item->absoluteURL; ?>"/>

Máte špatně

správně

<meta itemscope itemprop="mainEntityOfPage" itemtype=" schema.org/WebPage " itemid="<?php echo $this->item->absoluteURL; ?>"/>

mainEntityOfPage je součástí i schema.org/Article
Nehlásí to na něm žádnou chybu - test microdat
Má tedy být raději součástí schema.org/WebPage ?
V schema.org/Article je třeba na joomlaportálu.

Myslím že logo je povinná položka?

Ano je, nemám to ještě dodělané.

Powered by Fórum