microdata => rdfa so I make academics happy

This commit is contained in:
Peter Molnar 2019-02-03 16:40:08 +00:00
parent da02d9ba95
commit d19efb6c68
6 changed files with 126 additions and 136 deletions

View file

@ -33,7 +33,7 @@
{% endblock %}
{% block content %}
<main class="content-body h-feed hfeed {{ category.name }}">
<main class="content-body h-feed hfeed {{ category.name }}" vocab="http://schema.org/" typeof="Blog WebPage">
<header>
<p>
<svg width="128" height="128"><use xlink:href="#icon-{{ category.name }}" /></svg>
@ -53,12 +53,12 @@
{% endif %}
{% set _ = year.append(post.year)%}
<article class="h-entry hentry singular" lang="{{ post.lang }}" itemprop="blogPost" itemscope="" itemtype="http://schema.org/BlogPosting" itemref="author">
<article class="h-entry hentry singular" lang="{{ post.lang }}" property="blogPost" typeof="BlogPosting">
<header>
{% if category.display == 'flat' %}
<h3 class="p-name entry-title" itemprop="name headline" >
<h3 class="p-name entry-title" property="headline">
{% else %}
<h2 class="p-name entry-title" itemprop="name headline" >
<h2 class="p-name entry-title" property="headline">
{% endif %}
{% if post.is_reply %}
<svg class="icon" width="16" height="16">
@ -80,11 +80,11 @@
{% else %}
</h2>
{% endif %}
<a href="{{ post.url }}" itemprop="url mainEntityOfPage" class="u-url bookmark"></a>
<a href="{{ post.url }}" property="url mainEntityOfPage" class="u-url bookmark"></a>
</header>
{% if post.summary %}
<div class="e-summary entry-summary" itemprop="description">
<div class="e-summary entry-summary" property="description">
{{ post.html_summary }}
<p class="more">
<a href="{{ post.url }}">
@ -93,36 +93,12 @@
</p>
</div>
{% else %}
<div class="e-content entry-content" itemprop="articleBody">
<div class="e-content entry-content" property="articleBody">
{{ post.html_content }}
</div>
{% endif %}
<footer aria-hidden="true" hidden="hidden">
<span class="published updated">
<time class="dt-published dt-updated" datetime="{{ post.pubtime }}" itemprop="dateModified datePublished">{{ post.pubdate }}</time>
</span>
{% if not post.has_mainimg %}
<img src="{{ author.avatar }}"
itemprop="image"
width="0"
height="0"
alt="Photo of {{ author.name }}" />
{% endif %}
<p class="p-author h-card vcard">
<img class="photo avatar u-photo u-avatar"
src="{{ author.avatar }}"
alt="Photo of {{ author.name }}" />
<a class="fn p-name url u-url u-uid"
href="{{ author.url }}"
rel="author">
{{ author.name }}
</a>
<a class="u-email email" href="mailto:{{ author.email }}">
{{ author.email }}
</a>
</p>
</footer>
{% include 'meta-publisher.j2.html' %}
</article>
{% if loop.last %}
</section>

View file

@ -14,83 +14,59 @@
{% endblock %}
{% block content %}
<main class="content-body h-feed hfeed">
<main class="content-body h-feed hfeed" vocab="http://schema.org/" typeof="Blog WebPage">
<aside>
<div>
{{ post.html_content }}
</div>
</aside>
{% for category, latest in elements %}
{% for category, post in elements %}
<section>
<h2>Latest in
<h2>post in
<a href="{{ category.url }}/">
<svg width="16" height="16"><use xlink:href="#icon-{{ category.name }}" /></svg>
{{ category.name }}
</a>
</h2>
<article class="h-entry hentry singular" lang="{{ latest.lang }}" itemprop="blogPost" itemscope="" itemtype="http://schema.org/BlogPosting" itemref="author">
<article class="h-entry hentry singular" lang="{{ post.lang }}" property="blogPost" typeof="BlogPosting">
<header>
<h3 class="p-name entry-title" itemprop="name headline" >
{% if latest.is_reply %}
<h3 class="p-name entry-title" property="name headline" >
{% if post.is_reply %}
<svg class="icon" width="16" height="16">
<use xlink:href="#icon-reply" />
</svg>
<a href="{{ latest.url }}/">
<a href="{{ post.url }}/">
RE:
</a>
<a href="{{ latest.is_reply }}" class="u-in-reply-to">
{{ latest.is_reply }}
<a href="{{ post.is_reply }}" class="u-in-reply-to">
{{ post.is_reply }}
</a>
{% else %}
<a href="{{ latest.url }}">
<span class="entry-title p-name">{{ latest.title }}</span>
<a href="{{ post.url }}">
<span class="entry-title p-name">{{ post.title }}</span>
</a>
{% endif %}
</h3>
<a href="{{ post.url }}" itemprop="url mainEntityOfPage" class="u-url bookmark"></a>
<a href="{{ post.url }}" property="url mainEntityOfPage" class="u-url bookmark"></a>
</header>
{% if latest.summary %}
<div class="e-summary entry-summary" itemprop="description">
{{ latest.html_summary }}
{% if post.summary %}
<div class="e-summary entry-summary" property="description">
{{ post.html_summary }}
<span class="more">
<a href="{{ latest.url }}">
{% if latest.lang == 'hu' %}Tovább »{% else %}Continue »{% endif %}
<a href="{{ post.url }}">
{% if post.lang == 'hu' %}Tovább »{% else %}Continue »{% endif %}
</a>
</span>
</div>
{% else %}
<div class="e-content entry-content" itemprop="articleBody">
{{ latest.html_content }}
<div class="e-content entry-content" property="articleBody">
{{ post.html_content }}
</div>
{% endif %}
<footer aria-hidden="true" hidden="hidden">
<span class="published updated">
<time class="dt-published dt-updated" datetime="{{ latest.pubtime }}" itemprop="dateModified datePublished">{{ latest.pubdate }}</time>
</span>
{% if not latest.has_mainimg %}
<img src="{{ author.avatar }}"
itemprop="image"
width="0"
height="0"
alt="Photo of {{ author.name }}" />
{% endif %}
<p class="p-author h-card vcard">
<img class="photo avatar u-photo u-avatar"
src="{{ author.avatar }}"
alt="Photo of {{ author.name }}" />
<a class="fn p-name url u-url u-uid"
href="{{ author.url }}"
rel="author">
{{ author.name }}
</a>
<a class="u-email email" href="mailto:{{ author.email }}">
{{ author.email }}
</a>
</p>
</footer>
{% include 'meta-publisher.j2.html' %}
</article>
</section>
{% endfor %}

View file

@ -33,10 +33,10 @@
{% else %}
{% set mftype = 'h-entry' %}
{% endif %}
<main role="main">
<article class="{{ mftype }} hentry singular" lang="{{ post.lang }}" itemscope="" itemprop="blogPost" itemtype="http://schema.org/BlogPosting" itemref="author">
<main role="main" vocab="http://schema.org/" typeof="Blog WebPage">
<article class="{{ mftype }} hentry singular" lang="{{ post.lang }}" property="blogPost" typeof="BlogPosting">
<header>
<h1 class="entry-title p-name" itemprop="name headline">
<h1 class="entry-title p-name" property="headline">
{% if post.is_reply %}
<span>
<svg width="16" height="16">
@ -50,7 +50,7 @@
</a>
</span>
{% else %}
<a href="{{ post.url }}" title="{{ post.title }}">
<a href="{{ post.url }}">
<span>{{ post.title }}</span>
</a>
{% endif %}
@ -58,38 +58,43 @@
</header>
{% if post.review %}
<div class="h-review hreview" itemprop="review" itemscope="" itemtype="http://schema.org/Review">
<div class="h-review hreview" property="review" typeof="http://schema.org/Review">
<strong>Review summary of: <a href="{{ post.review.url }}" class="item fn p-name u-url p-item h-product">{{ post.review.title }}</a></strong>
<p>
By
<span class="p-author h-card vcard reviewer" itemprop="author" itemscope="" itemtype="http://schema.org/Person">
<a class="fn p-name url u-url u-uid" href="{{ author.url }}" itemprop="url">
<span itemprop="name">{{ author.name }}</span>
</a></span> at <time class="dt-published dtreviewed" datetime="{{ post.pubtime }}" itemprop="datePublished">{{ post.pubdate }}</time>
<span class="p-author h-card vcard reviewer" property="author" typeof="Person">
<a class="fn p-name url u-url u-uid" href="{{ author.url }}" property="url">
<span property="name">{{ author.name }}</span>
</a></span> at <time class="dt-published dtreviewed" datetime="{{ post.pubtime }}" property="datePublished">{{ post.pubdate }}</time>
</p>
<p>
<span class="rating" itemprop="reviewRating" itemscope itemtype="http://schema.org/Rating">
<meta itemprop="worstRating" content = "1">
<span class="value" itemprop="ratingValue">{{ post.review.rated }}</span>
<span class="rating" property="reviewRating" itemscope typeof="Rating">
<meta property="worstRating" content = "1">
<span class="value" property="ratingValue">{{ post.review.rated }}</span>
out of
<span class="best" itemprop="bestRating">{{ post.review.outof }}</span>
<span class="best" property="bestRating">{{ post.review.outof }}</span>
</span>
</p>
<p class="p-summary summary" itemprop="reviewBody">{{ post.review.summary }}</p>
<p class="p-summary summary" property="reviewBody">{{ post.review.summary }}</p>
</div>
{% endif %}
{% if post.summary %}
<div class="e-summary entry-summary" itemprop="description">
<div class="e-summary entry-summary" property="description">
{{ post.html_summary }}
</div>
{% endif %}
<div class="e-content entry-content" itemprop="articleBody">
<div class="e-content entry-content" property="articleBody">
{{ post.html_content }}
</div>
<footer>
{% if not post.enclosure %}
<img aria-hidden="true" hidden="hidden" class="u-featured hidden" property="image" src="{{ author.avatar }}" />
{% else %}
<img aria-hidden="true" hidden="hidden" class="u-featured hidden" property="image" src="{{ post.enclosure.url }}" />
{% endif %}
<dl>
{% if post.event %}
<dt>Trip details</dt>
@ -109,34 +114,35 @@
{% endif %}
<dt>Author</dt>
<dd class="p-author h-card vcard" itemprop="author" itemscope="" itemtype="http://schema.org/Person">
<img class="photo avatar u-photo u-avatar"
src="{{ author.avatar }}"
alt="Photo of {{ author.name }}"
itemprop="image" />
<a class="fn p-name url u-url u-uid"
href="{{ author.url }}"
rel="author"
itemprop="url">
<span itemprop="name">{{ author.name }}</span>
</a>
<a class="u-email email" href="mailto:{{ author.email }}">
<span itemprop="email">{{ author.email }}</span>
</a>
<p aria-hidden="true" hidden="hidden" class="hidden" itemprop="publisher" itemscope="" itemtype="https://schema.org/Organization">
<span itemprop="name">{{ site.domain }}</span>
<a href="{{ site.url }}" itemprop="url">{{ site.url }}</a>
<span itemprop="logo" itemscope="" itemtype="https://schema.org/ImageObject">
<img src="{{ author.avatar }}" alt="" itemprop="url" />
<dd>
<span class="p-author h-card vcard" property="author" typeof="Person">
<img class="photo avatar u-photo u-avatar"
src="{{ author.avatar }}"
alt="Photo of {{ author.name }}"
property="image" />
<a class="fn p-name url u-url u-uid org"
href="{{ author.url }}"
property="url">
<span property="name">{{ author.name }}</span>
</a>
<a class="u-email email" href="mailto:{{ author.email }}">
{{ author.email }}
</a>
</span>
<span aria-hidden="true" hidden="hidden" property="publisher" typeof="Organization">
<span property="name">{{ site.domain }}</span>
<a href="{{ site.url }}" property="url">{{ site.url }}</a>
<span property="logo" typeof="ImageObject">
<img src="{{ author.avatar }}" alt="" property="url" />
</span>
</p>
</span>
</dd>
<dt>Published</dt>
<dd class="published updated">
<time class="dt-published dt-updated"
datetime="{{ post.pubtime }}"
itemprop="dateModified datePublished"
property="dateModified datePublished"
>{{ post.pubdate }}</time>
</dd>
@ -144,7 +150,7 @@
<dt>License</dt>
<dd class="license">
{% if post.licence == 'CC-BY-4.0' %}
<a rel="license" href="https://creativecommons.org/licenses/by/4.0/" class="u-license" itemprop="license">
<a rel="license" href="https://creativecommons.org/licenses/by/4.0/" class="u-license" property="license">
{{ post.licence }}
</a>
<ul>
@ -155,7 +161,7 @@
<li>you always need to make a link back here</li>
</ul>
{% elif post.licence == 'CC-BY-NC-4.0' %}
<a rel="license" href="https://creativecommons.org/licenses/by-nc/4.0/" class="u-license" itemprop="license">
<a rel="license" href="https://creativecommons.org/licenses/by-nc/4.0/" class="u-license" property="license">
{{ post.licence }}
</a>
<ul>
@ -167,7 +173,7 @@
</ul>
For commercial use, please contact me.
{% elif post.licence == 'CC-BY-NC-ND-4.0' %}
<a rel="license" href="https://creativecommons.org/licenses/by-nc-nd/4.0/" class="u-license" itemprop="license">
<a rel="license" href="https://creativecommons.org/licenses/by-nc-nd/4.0/" class="u-license" property="license">
{{ post.licence }}
</a>
<ul>
@ -183,10 +189,7 @@
<dt>Entry URL</dt>
<dd>
{% if not post.has_mainimg %}
<img aria-hidden="true" src="{{ author.avatar }}" itemprop="image" hidden="hidden" class="hidden" />
{% endif %}
<a class="u-url u-uuid" rel="bookmark" href="{{ post.url }}" itemprop="url mainEntityOfPage">
<a class="u-url u-uuid" href="{{ post.url }}" property="url">
{{ post.url }}
</a>
</dd>
@ -198,7 +201,7 @@
{% if post.syndicate|length %}
<section class="syndication">
{% for url in post.syndicate %}
<a href="{{ url }}" class="u-syndication" itemprop="u-syndication"></a>
<a href="{{ url }}" class="u-syndication"></a>
{% endfor %}
</section>
{% endif %}
@ -206,14 +209,21 @@
<section class="encourage">
<h2>Encourage creation!</h2>
<p>
If this entry helped you, or you simply liked it, leave a tip via <br>
If this entry helped you, or you simply liked it, leave a tip via <br />
{% for provider, info in author.tips.items() %}
<span typeof="DonateAction" property="potentialAction">
{% if loop.last and not loop.first %} or {% endif %}
<a rel="payment" href="{{ info.url }}">
<a property="url" href="{{ info.url }}">
<svg width="16" height="16">
<use xlink:href="#icon-{{ provider }}"></use>
</svg> {{ info.text }}</a>
{% if not loop.last and not loop.first %}, {% endif %}
<span aria-hidden="true" hidden="hidden" property="recipient" typeof="Person">
for
<span property="name">{{ author.name }}</span>
(<span property="email">{{ author.email }}</span>)
</span>
</span>
{% endfor %}
</p>
</section>

View file

@ -2,7 +2,7 @@
{% if href != src %}
<a href="{{ href }}">
{% endif %}
<img src="{{ src }}" title="{{ title }}" alt="" width="{{ width }}" height="{{ height }}" {% if is_mainimg %}itemprop="image" class="u-featured"{% endif %} />
<img src="{{ src }}" title="{{ title }}" alt="" width="{{ width }}" height="{{ height }}" />
{% if href != src %}
</a>
{% endif %}

View file

@ -23,7 +23,7 @@
</style>
</head>
<body itemscope="" itemtype="http://schema.org/Blog http://schema.org/WebPage">
<body>
{% macro activemenu(name) %}
{% if (post is defined and post.slug == name )
@ -62,15 +62,15 @@
<label for="lightscheme">light</label>
</span>
</form>
<form role="search" method="get" action="{{ site.search }}" itemprop="potentialAction" itemscope="" itemtype="https://schema.org/SearchAction">
<meta itemprop="target" content="{{ site.search }}?q={q}"/>
<form role="search" method="get" action="{{ site.search }}" property="potentialAction" typeof="SearchAction" vocab="http://schema.org/">
<meta property="target" content="{{ site.search }}?q={q}"/>
<label for="qsub">
<input type="submit" value="search" id="qsub" name="qsub" />
<svg width="16" height="16">
<use xlink:href="#icon-search"></use>
</svg>
</label>
<input itemprop="query-input" type="search" placeholder="search..." value="" name="q" id="q" title="Search for:" required="required" />
<input type="search" placeholder="search..." value="" name="q" id="q" title="Search for:" required="required" property="query-input" />
</form>
</div>
</section>
@ -82,25 +82,22 @@
{% block pagination %}
{% endblock %}
<footer class="p-author h-card vcard" id="author" itemprop="author publisher" itemscope="" itemtype="https://schema.org/Person https://schema.org/Organization">
<footer class="p-author h-card vcard">
<p>
<a href="https://creativecommons.org/">CC</a>,
1999-2019,
<span itemprop="logo" itemscope="" itemtype="https://schema.org/ImageObject">
<img class="photo avatar u-photo u-avatar"
src="{{ author.avatar }}"
alt="Photo of {{ author.name }}"
itemprop="image url" />
</span>
<a class="fn p-name url u-url u-uid" rel="me" href="{{ site.url }}">
<span itemprop="name">{{ author.name }}</span>
alt="Photo of {{ author.name }}" />
<a class="fn p-name url u-url u-uid org" rel="me" href="{{ site.url }}">
{{ author.name }}
</a>
<a class="u-email email" rel="me" href="mailto:{{ author.email }}">
<svg width="16" height="16">
<title>email</title>
<use xlink:href="#icon-mail"></use>
</svg>
<span itemprop="email">{{ author.email }}</span>
{{ author.email }}
</a>
</p>
<nav>

View file

@ -0,0 +1,31 @@
<footer aria-hidden="true" hidden="hidden">
<span class="published updated">
<time datetime="{{ post.pubtime }}" class="dt-published dt-updated" property="dateModified datePublished">{{ post.pubdate }}</time>
</span>
{% if not post.enclosure %}
<img aria-hidden="true" hidden="hidden" class="u-featured hidden" property="image" src="{{ author.avatar }}" />
{% else %}
<img aria-hidden="true" hidden="hidden" class="u-featured hidden" property="image" src="{{ post.enclosure.url }}" />
{% endif %}
<p class="p-author h-card vcard" property="author" typeof="Person">
<img class="photo avatar u-photo u-avatar"
src="{{ author.avatar }}"
alt="Photo of {{ author.name }}"
property="image" />
<a class="fn p-name url u-url u-uid org"
href="{{ author.url }}"
property="url">
<span property="name">{{ author.name }}</span>
</a>
<a class="u-email email" href="mailto:{{ author.email }}">
{{ author.email }}
</a>
</p>
<span property="publisher" typeof="Organization">
<span property="name">{{ site.domain }}</span>
<a href="{{ site.url }}" property="url">{{ site.url }}</a>
<span property="logo" typeof="ImageObject">
<img src="{{ author.avatar }}" alt="" property="url" />
</span>
</span>
</footer>