jekyll-seo-tag/lib/template.html

312 lines
10 KiB
HTML
Raw Normal View History

2016-02-20 19:26:06 +00:00
<!-- Begin Jekyll SEO tag v{{ seo_tag.version }} -->
2015-10-25 21:21:46 +00:00
2016-02-23 02:31:59 +00:00
{% if page.url == "/" or page.url == "/about/" %}
{% assign seo_homepage_or_about = true %}
{% endif %}
2016-01-29 18:35:40 +00:00
{% assign seo_site_title = site.title | default: site.name %}
2015-10-25 21:21:46 +00:00
{% if page.title %}
{% assign seo_title = page.title %}
2016-01-05 22:59:46 +00:00
{% assign seo_page_title = page.title %}
2016-02-09 23:33:53 +00:00
{% if seo_site_title %}
{% assign seo_title = seo_title | append:" - " | append: seo_site_title %}
2015-10-25 21:21:46 +00:00
{% endif %}
{% elsif seo_site_title %}
{% assign seo_title = seo_site_title %}
{% assign seo_page_title = seo_site_title %}
2016-02-09 23:33:53 +00:00
2016-01-12 22:15:22 +00:00
{% if site.description %}
{% assign seo_title = seo_title | append:" - " | append: site.description %}
{% endif %}
2015-10-25 21:21:46 +00:00
{% endif %}
2016-02-09 23:33:53 +00:00
2016-02-23 02:31:59 +00:00
{% if page.seo and page.seo.name %}
{% assign seo_name = page.seo.name %}
{% elsif seo_homepage_or_about and site.social and site.social.name %}
{% assign seo_name = site.social.name %}
{% elsif seo_homepage_or_about and seo_site_title %}
{% assign seo_name = seo_site_title %}
{% endif %}
{% if seo_name %}
{% assign seo_name = seo_name | smartify | strip_html | normalize_whitespace | escape_once %}
2016-02-23 02:31:59 +00:00
{% endif %}
2015-10-25 21:21:46 +00:00
{% if seo_title %}
{% assign seo_title = seo_title | smartify | strip_html | normalize_whitespace | escape_once %}
2015-10-25 21:21:46 +00:00
{% endif %}
2016-02-09 23:33:53 +00:00
{% if seo_site_title %}
{% assign seo_site_title = seo_site_title | smartify | strip_html | normalize_whitespace | escape_once %}
{% endif %}
2016-02-09 23:33:53 +00:00
2016-01-05 22:59:46 +00:00
{% if seo_page_title %}
{% assign seo_page_title = seo_page_title | smartify | strip_html | normalize_whitespace | escape_once %}
2016-01-05 22:59:46 +00:00
{% endif %}
2015-10-25 21:21:46 +00:00
2016-01-29 18:35:40 +00:00
{% assign seo_description = page.description | default: page.excerpt | default: site.description %}
2015-10-25 21:21:46 +00:00
{% if seo_description %}
{% assign seo_description = seo_description | markdownify | strip_html | normalize_whitespace | escape_once %}
2015-10-25 21:21:46 +00:00
{% endif %}
2016-02-21 18:52:49 +00:00
{% assign seo_author = page.author | default: page.authors[0] | default: site.author %}
2016-02-20 22:34:02 +00:00
{% if seo_author %}
2017-01-28 19:29:17 +00:00
{% if seo_author.name %}
{% assign seo_author_name = seo_author.name %}
{% else %}
{% if site.data.authors and site.data.authors[seo_author] %}
{% assign seo_author_name = site.data.authors[seo_author].name %}
{% else %}
{% assign seo_author_name = seo_author %}
{% endif %}
{% endif %}
2016-02-20 22:34:02 +00:00
{% if seo_author.twitter %}
{% assign seo_author_twitter = seo_author.twitter %}
{% else %}
{% if site.data.authors and site.data.authors[seo_author] %}
{% assign seo_author_twitter = site.data.authors[seo_author].twitter %}
{% else %}
{% assign seo_author_twitter = seo_author %}
{% endif %}
{% endif %}
{% assign seo_author_twitter = seo_author_twitter | replace:"@","" %}
2016-01-12 20:09:43 +00:00
{% endif %}
2017-02-16 19:07:35 +00:00
{% if page.date_modified or page.last_modified_at or page.date %}
{% assign seo_date_modified = page.seo.date_modified | default: page.last_modified_at | default: page.date %}
{% endif %}
2016-02-23 02:31:59 +00:00
{% if page.seo and page.seo.type %}
{% assign seo_type = page.seo.type %}
{% elsif seo_homepage_or_about %}
{% assign seo_type = "WebSite" %}
{% elsif page.date %}
{% assign seo_type = "BlogPosting" %}
{% else %}
{% assign seo_type = "WebPage" %}
{% endif %}
{% if page.seo and page.seo.links %}
{% assign seo_links = page.seo.links %}
{% elsif seo_homepage_or_about and site.social and site.social.links %}
{% assign seo_links = site.social.links %}
{% endif %}
{% if site.logo %}
{% assign seo_site_logo = site.logo %}
{% unless seo_site_logo contains "://" %}
{% assign seo_site_logo = seo_site_logo | absolute_url %}
{% endunless %}
{% assign seo_site_logo = seo_site_logo | escape %}
{% endif %}
{% if page.image %}
2017-02-16 19:16:11 +00:00
{% assign seo_page_image_default = page.image.default.path | default: page.image.default | default: page.image.path | default: page.image %}
2017-02-16 19:07:35 +00:00
{% unless seo_page_image_default contains "://" %}
{% assign seo_page_image_default = seo_page_image_default | absolute_url %}
{% endunless %}
{% assign seo_page_image_default = seo_page_image_default | escape %}
{% assign seo_page_image_default_width = page.image.default.width %}
{% assign seo_page_image_default_height = page.image.default.height %}
{% assign seo_page_image_facebook = page.image.facebook.path | default: page.image.facebook %}
{% unless seo_page_image_facebook contains "://" %}
{% assign seo_page_image_facebook = seo_page_image_facebook | absolute_url %}
{% endunless %}
{% assign seo_page_image_facebook = seo_page_image_facebook | escape %}
{% assign seo_page_image_facebook_width = page.image.facebook.width | default: page.image.width %}
{% assign seo_page_image_facebook_height = page.image.facebook.height | default: page.image.height %}
2017-02-16 19:07:35 +00:00
{% assign seo_page_image_twitter = page.image.twitter.path | default: page.image.twitter %}
{% unless seo_page_image_twitter contains "://" %}
{% assign seo_page_image_twitter = seo_page_image_twitter | absolute_url %}
{% endunless %}
2017-02-16 19:07:35 +00:00
{% assign seo_page_image_twitter = seo_page_image_twitter | escape %}
{% endif %}
{% if seo_tag.title and seo_title %}
2015-10-25 21:21:46 +00:00
<title>{{ seo_title }}</title>
2016-01-05 22:59:46 +00:00
{% endif %}
{% if seo_page_title %}
2016-01-05 22:59:46 +00:00
<meta property="og:title" content="{{ seo_page_title }}" />
2015-10-25 21:21:46 +00:00
{% endif %}
2017-01-28 19:29:17 +00:00
{% if seo_author_name %}
<meta name="author" content="{{ seo_author_name }}" />
2016-07-31 08:39:02 +00:00
{% endif %}
2015-10-25 21:21:46 +00:00
{% if seo_description %}
<meta name="description" content="{{ seo_description }}" />
<meta property="og:description" content="{{ seo_description }}" />
2015-10-25 21:21:46 +00:00
{% endif %}
{% if page.url %}
<link rel="canonical" href="{{ page.url | replace:'/index.html','/' | absolute_url }}" />
<meta property="og:url" content="{{ page.url | replace:'/index.html','/' | absolute_url }}" />
2015-10-25 21:21:46 +00:00
{% endif %}
{% if seo_site_title %}
<meta property="og:site_name" content="{{ seo_site_title }}" />
2015-10-25 21:21:46 +00:00
{% endif %}
2017-02-16 19:07:35 +00:00
{% if page.image %}
{% if page.image.facebook %}
{% assign local_seo_page_image = seo_page_image_facebook %}
{% assign local_seo_page_image_height = seo_page_image_facebook_height %}
{% assign local_seo_page_image_width = seo_page_image_facebook_width %}
{% else %}
{% assign local_seo_page_image = seo_page_image_default %}
{% assign local_seo_page_image_height = seo_page_image_default_height %}
{% assign local_seo_page_image_width = seo_page_image_default_width %}
2016-04-19 13:55:34 +00:00
{% endif %}
2017-02-16 19:07:35 +00:00
<meta property="og:image" content="{{ local_seo_page_image }}" />
{% if local_seo_page_image_height %}
<meta property="og:image:height" content="{{ local_seo_page_image_height }}" />
{% endif %}
{% if local_seo_page_image_width %}
<meta property="og:image:width" content="{{ local_seo_page_image_width }}" />
2016-04-19 13:55:34 +00:00
{% endif %}
{% endif %}
{% if page.image.twitter %}
2017-02-16 19:07:35 +00:00
<meta name="twitter:image" content="{{ seo_page_image_twitter }}" />
2015-10-25 21:21:46 +00:00
{% endif %}
{% if page.date %}
<meta property="og:type" content="article" />
2016-02-03 17:52:46 +00:00
<meta property="article:published_time" content="{{ page.date | date_to_xmlschema }}" />
{% endif %}
2016-02-03 17:52:46 +00:00
{% if paginator.previous_page %}
<link rel="prev" href="{{ paginator.previous_page_path | absolute_url }}">
{% endif %}
{% if paginator.next_page %}
<link rel="next" href="{{ paginator.next_page_path | absolute_url }}">
2015-10-25 21:21:46 +00:00
{% endif %}
{% if site.twitter %}
2017-02-16 19:07:35 +00:00
{% if page.image or page.image.twitter %}
<meta name="twitter:card" content="summary_large_image" />
2016-03-05 18:29:49 +00:00
{% else %}
<meta name="twitter:card" content="summary" />
{% endif %}
2016-03-05 20:19:14 +00:00
2015-10-25 21:21:46 +00:00
<meta name="twitter:site" content="@{{ site.twitter.username | replace:"@","" }}" />
2016-02-09 23:33:53 +00:00
2016-01-12 20:09:43 +00:00
{% if seo_author_twitter %}
2016-02-20 20:49:35 +00:00
<meta name="twitter:creator" content="@{{ seo_author_twitter }}" />
2015-10-25 21:21:46 +00:00
{% endif %}
{% endif %}
2016-02-03 17:52:46 +00:00
{% if site.facebook %}
{% if site.facebook.admins %}
<meta property="fb:admins" content="{{ site.facebook.admins }}" />
{% endif %}
{% if site.facebook.publisher %}
<meta property="article:publisher" content="{{ site.facebook.publisher }}" />
{% endif %}
{% if site.facebook.app_id %}
<meta property="fb:app_id" content="{{ site.facebook.app_id }}" />
{% endif %}
2016-02-09 23:33:53 +00:00
{% endif %}
2016-02-09 21:22:28 +00:00
2017-01-13 04:37:53 +00:00
{% if site.webmaster_verifications %}
{% if site.webmaster_verifications.google %}
<meta name="google-site-verification" content="{{ site.webmaster_verifications.google }}">
{% endif %}
{% if site.webmaster_verifications.bing %}
<meta name="msvalidate.01" content="{{ site.webmaster_verifications.bing }}">
{% endif %}
{% if site.webmaster_verifications.alexa %}
<meta name="alexaVerifyID" content="{{ site.webmaster_verifications.alexa }}">
{% endif %}
{% if site.webmaster_verifications.yandex %}
<meta name="yandex-verification" content="{{ site.webmaster_verifications.yandex }}">
{% endif %}
{% elsif site.google_site_verification %}
2016-02-09 21:22:28 +00:00
<meta name="google-site-verification" content="{{ site.google_site_verification }}" />
2016-02-03 17:41:05 +00:00
{% endif %}
2017-01-13 04:37:53 +00:00
2016-02-03 17:41:05 +00:00
2016-02-22 18:35:55 +00:00
<script type="application/ld+json">
{
2016-03-01 16:29:04 +00:00
"@context": "http://schema.org",
2016-02-22 18:35:55 +00:00
2016-02-23 02:31:59 +00:00
{% if seo_type %}
2016-03-01 16:29:04 +00:00
"@type": {{ seo_type | jsonify }},
2016-02-22 18:35:55 +00:00
{% endif %}
2016-02-23 02:31:59 +00:00
{% if seo_name %}
2016-03-01 16:29:04 +00:00
"name": {{ seo_name | jsonify }},
2016-02-22 18:35:55 +00:00
{% endif %}
{% if seo_page_title %}
"headline": {{ seo_page_title | jsonify }},
{% endif %}
{% if seo_author %}
"author": {
"@type": "Person",
"name": {{ seo_author | jsonify }}
},
{% endif %}
2017-02-16 19:07:35 +00:00
{% if seo_page_image_default %}
{% if seo_page_image_default_height && seo_page_image_default_width %}
"image": {
"@type": "ImageObject",
2017-02-16 19:07:35 +00:00
"url": {{ seo_page_image_default | jsonify }},
"height": {{ seo_page_image_default_height | jsonify }},
"width": {{ seo_page_image_default_width | jsonify }}
},
{% else %}
2017-02-16 19:07:35 +00:00
"image": {{ seo_page_image_default | jsonify }},
{% endif %}
2016-02-22 18:35:55 +00:00
{% endif %}
{% if page.date %}
"datePublished": {{ page.date | date_to_xmlschema | jsonify }},
{% endif %}
2017-02-16 19:07:35 +00:00
{% if seo_date_modified %}
"dateModified": {{ seo_date_modified | date_to_xmlschema | jsonify }},
{% endif %}
{% if seo_description %}
"description": {{ seo_description | jsonify }},
2016-02-22 18:35:55 +00:00
{% endif %}
{% if seo_site_logo %}
"publisher": {
"@type": "Organization",
{% if seo_author %}
"name": {{ seo_author | jsonify }},
{% endif %}
"logo": {
"@type": "ImageObject",
"url": {{ seo_site_logo | jsonify }}
}
},
2015-10-25 21:21:46 +00:00
{% endif %}
2017-02-16 19:07:35 +00:00
{% if seo_type == "BlogPosting" or seo_type == "CreativeWork"%}
"mainEntityOfPage": {
"@type": "WebPage",
"@id": {{ page.url | replace:'/index.html','/' | absolute_url | jsonify }}
},
{% endif %}
2016-02-23 02:31:59 +00:00
{% if seo_links %}
2016-03-01 16:29:04 +00:00
"sameAs": {{ seo_links | jsonify }},
2016-02-22 18:35:55 +00:00
{% endif %}
"url": {{ page.url | replace:'/index.html','/' | absolute_url | jsonify }}
2016-02-22 18:35:55 +00:00
}
</script>
2015-10-25 21:21:46 +00:00
<!-- End Jekyll SEO tag -->