chiark / gitweb /
theme: provide social meta tags for the index/archive page.
authorVladimír Vondruš <mosra@centrum.cz>
Sat, 16 Dec 2017 01:37:42 +0000 (02:37 +0100)
committerVladimír Vondruš <mosra@centrum.cz>
Sat, 16 Dec 2017 10:38:37 +0000 (11:38 +0100)
33 files changed:
pelican-theme/templates/archives.html
pelican-theme/templates/index.html
pelican-theme/test/blog/archives.html [new file with mode: 0644]
pelican-theme/test/blog/index.html
pelican-theme/test/blog_author_list/index.html
pelican-theme/test/blog_collapse_first_both/index.html
pelican-theme/test/blog_collapse_first_both_hide_summary_both/index.html
pelican-theme/test/blog_collapse_first_both_hide_summary_global/index.html
pelican-theme/test/blog_collapse_first_global/index.html
pelican-theme/test/blog_collapse_first_global_hide_summary_both/index.html
pelican-theme/test/blog_collapse_first_global_hide_summary_global/index.html
pelican-theme/test/blog_footer_links/index.html
pelican-theme/test/blog_hide_summary_both/index.html
pelican-theme/test/blog_hide_summary_global/index.html
pelican-theme/test/blog_html_escape/archives.html [new file with mode: 0644]
pelican-theme/test/blog_html_escape/archives2.html [new file with mode: 0644]
pelican-theme/test/blog_html_escape/index.html
pelican-theme/test/blog_html_escape/index2.html
pelican-theme/test/blog_minimal/index.html
pelican-theme/test/blog_modified_date/index.html
pelican-theme/test/blog_pagination/index.html
pelican-theme/test/blog_pagination/index2.html
pelican-theme/test/blog_pagination/index3.html
pelican-theme/test/blog_pagination_disabled/index.html
pelican-theme/test/layout/index.html
pelican-theme/test/layout_disable_blog_links/index.html
pelican-theme/test/layout_disable_fine_print/index.html
pelican-theme/test/layout_html_escape/index.html
pelican-theme/test/layout_minimal/index.html
pelican-theme/test/layout_no_footer/index.html
pelican-theme/test/layout_one_column_navbar/index.html
pelican-theme/test/test_blog.py
pelican-theme/test/test_layout.py

index 29422b4cdf42abb91195e2111ae33219cbee3465..08fe337ac481335991588a9cd6f1877eac8e8af2 100644 (file)
   {% endif %}
 {% endblock %}
 
+{% block social %}
+  {{- super() -}}
+  {# this has to be here otherwise the spacing is all wrong. fuck. #}
+  <meta property="og:title" content="{{ M_BLOG_NAME|e }}" />
+  <meta name="twitter:title" content="{{ M_BLOG_NAME|e }}" />
+  {% block social_url %}
+  <meta property="og:url" content="{{ M_BLOG_URL|format_siteurl|e }}" />
+  {% endblock %}
+  <meta name="twitter:card" content="summary" />
+  <meta property="og:type" content="website" />
+{% endblock %}
+
 {% block content %}
     <div class="m-col-m-10">
       {% if articles_page %}
index 34d21519fd26c490bb38761137a63abff3061365..266946b1c3a6ec80db0ab8419b7906bd13bbc47f 100644 (file)
@@ -1 +1,5 @@
 {% extends "archives.html" %}
+
+{% block social_url %}
+  <meta property="og:url" content="{{ ''|format_siteurl|e }}" />
+{% endblock %}
diff --git a/pelican-theme/test/blog/archives.html b/pelican-theme/test/blog/archives.html
new file mode 100644 (file)
index 0000000..b98e809
--- /dev/null
@@ -0,0 +1,84 @@
+<!DOCTYPE html>
+<html lang="en" prefix="og: http://ogp.me/ns#">
+<head>
+  <meta charset="UTF-8" />
+  <title>A Pelican Blog</title>
+  <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Source+Code+Pro:400,400i,600%7CSource+Sans+Pro:400,400i,600,600i" />
+  <link rel="stylesheet" href="static/m-dark.css" />
+  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+  <meta property="og:site_name" content="A Pelican Blog" />
+  <meta property="og:title" content="A Pelican Blog" />
+  <meta name="twitter:title" content="A Pelican Blog" />
+  <meta property="og:url" content="archives.html" />
+  <meta name="twitter:card" content="summary" />
+  <meta property="og:type" content="website" />
+</head>
+<body>
+<header><nav id="navigation">
+  <div class="m-container">
+    <div class="m-row">
+      <a href="./" id="m-navbar-brand" class="m-col-t-9 m-col-m-none m-left-m">A Pelican Blog</a>
+    </div>
+  </div>
+</nav></header>
+<main>
+<div class="m-container">
+  <div class="m-row">
+    <div class="m-col-m-10">
+      <article>
+        <header>
+          <h1><a href="article.html" rel="bookmark" title="Permalink to An article">
+            <time class="m-date" datetime="2017-12-09T00:00:00+00:00">
+              Dec <span class="m-date-day">09</span> 2017
+            </time>
+            An article
+          </a></h1>
+          <p>The summary.
+          On multiple
+          lines.</p>
+        </header>
+        <div class="m-clearfix-l"></div>
+<!-- content -->
+<p>The content, expanded fully on the page.</p>
+<!-- /content -->
+        <footer>
+          <p>Posted by <a href="author-explicit-author.html">Explicit Author</a> on <time datetime="2017-12-09T00:00:00+00:00">Dec 09, 2017</time> in <a href="category-a-category.html">A category</a>. Tags: <a href="tag-first.html">First</a>, <a href="tag-third.html">Third</a>, <a href="tag-second.html">Second</a>.</p>
+        </footer>
+      </article>
+      <article>
+        <header>
+          <h1><a href="article-jumbo.html" rel="bookmark" title="Permalink to An article — a jumbo one">
+            <time class="m-date" datetime="2017-12-08T00:00:00+00:00">
+              Dec <span class="m-date-day">08</span> 2017
+            </time>
+            An article — a jumbo one
+          </a></h1>
+          <p>A summary.
+          On multiple
+          lines.</p>
+        </header>
+        <footer>
+          <p>Posted by <a href="author-implicit-author.html">Implicit Author</a> on <time datetime="2017-12-08T00:00:00+00:00">Dec 08, 2017</time> in <a href="category-another-category.html">Another category</a>. Tags: <a href="tag-fourth.html">Fourth</a>, <a href="tag-first.html">First</a>, <a href="tag-third.html">Third</a>.</p>
+        </footer>
+        <div class="m-clearfix-l"></div>
+      </article>
+    </div>
+    <nav class="m-navpanel m-col-m-2">
+      <h3>Categories</h3>
+      <ol class="m-block-bar-m">
+        <li><a href="category-a-category.html">A category</a></li>
+        <li><a href="category-another-category.html">Another category</a></li>
+      </ol>
+      <h3>Tag cloud</h3>
+      <ul class="m-tagcloud">
+        <li class="m-tag-5"><a href="tag-first.html">First</a></li>
+        <li class="m-tag-3"><a href="tag-fourth.html">Fourth</a></li>
+        <li class="m-tag-3"><a href="tag-second.html">Second</a></li>
+        <li class="m-tag-5"><a href="tag-third.html">Third</a></li>
+      </ul>
+    </nav>
+  </div>
+</div>
+</main>
+</body>
+</html>
index b763cbd36e3fb8ddb040cfdcc0bf17a6de11a258..39e323931567d95981ac45fa2d00568c68f8586e 100644 (file)
@@ -7,6 +7,11 @@
   <link rel="stylesheet" href="static/m-dark.css" />
   <meta name="viewport" content="width=device-width, initial-scale=1.0" />
   <meta property="og:site_name" content="A Pelican Blog" />
+  <meta property="og:title" content="A Pelican Blog" />
+  <meta name="twitter:title" content="A Pelican Blog" />
+  <meta property="og:url" content="./" />
+  <meta name="twitter:card" content="summary" />
+  <meta property="og:type" content="website" />
 </head>
 <body>
 <header><nav id="navigation">
index 32ad87a236d42cda5465e3d671efbe6dd57cbd2d..e2dcecf714a4f79ce1631b6c4b97cf74e429778e 100644 (file)
@@ -7,6 +7,11 @@
   <link rel="stylesheet" href="static/m-dark.css" />
   <meta name="viewport" content="width=device-width, initial-scale=1.0" />
   <meta property="og:site_name" content="A Pelican Blog" />
+  <meta property="og:title" content="A Pelican Blog" />
+  <meta name="twitter:title" content="A Pelican Blog" />
+  <meta property="og:url" content="./" />
+  <meta name="twitter:card" content="summary" />
+  <meta property="og:type" content="website" />
 </head>
 <body>
 <header><nav id="navigation">
index 2d8a0e5577e8439a0c770f41926c21675088b309..d005ea1387698f76371d06549b437deabc9193b4 100644 (file)
@@ -7,6 +7,11 @@
   <link rel="stylesheet" href="static/m-dark.css" />
   <meta name="viewport" content="width=device-width, initial-scale=1.0" />
   <meta property="og:site_name" content="A Pelican Blog" />
+  <meta property="og:title" content="A Pelican Blog" />
+  <meta name="twitter:title" content="A Pelican Blog" />
+  <meta property="og:url" content="./" />
+  <meta name="twitter:card" content="summary" />
+  <meta property="og:type" content="website" />
 </head>
 <body>
 <header><nav id="navigation">
index 9f8c3c0d758c466b7ae30a9002d9f9900b874e85..93d015e7949da4de8cd5dcc98a0a473c153bad3e 100644 (file)
@@ -7,6 +7,11 @@
   <link rel="stylesheet" href="static/m-dark.css" />
   <meta name="viewport" content="width=device-width, initial-scale=1.0" />
   <meta property="og:site_name" content="A Pelican Blog" />
+  <meta property="og:title" content="A Pelican Blog" />
+  <meta name="twitter:title" content="A Pelican Blog" />
+  <meta property="og:url" content="./" />
+  <meta name="twitter:card" content="summary" />
+  <meta property="og:type" content="website" />
 </head>
 <body>
 <header><nav id="navigation">
index 42375798396aa28abe9cec26b3e92cd5f5e03dad..1a4375cbd0f2080562b22d0cafc5801e2b8d133b 100644 (file)
@@ -7,6 +7,11 @@
   <link rel="stylesheet" href="static/m-dark.css" />
   <meta name="viewport" content="width=device-width, initial-scale=1.0" />
   <meta property="og:site_name" content="A Pelican Blog" />
+  <meta property="og:title" content="A Pelican Blog" />
+  <meta name="twitter:title" content="A Pelican Blog" />
+  <meta property="og:url" content="./" />
+  <meta name="twitter:card" content="summary" />
+  <meta property="og:type" content="website" />
 </head>
 <body>
 <header><nav id="navigation">
index da5e351ea46743ddc4fede0a11d8fa91fdf4216d..a0ac0d7574ae72db3669f7c77388ab8327dd202d 100644 (file)
@@ -7,6 +7,11 @@
   <link rel="stylesheet" href="static/m-dark.css" />
   <meta name="viewport" content="width=device-width, initial-scale=1.0" />
   <meta property="og:site_name" content="A Pelican Blog" />
+  <meta property="og:title" content="A Pelican Blog" />
+  <meta name="twitter:title" content="A Pelican Blog" />
+  <meta property="og:url" content="./" />
+  <meta name="twitter:card" content="summary" />
+  <meta property="og:type" content="website" />
 </head>
 <body>
 <header><nav id="navigation">
index 8ade8d6b6bb34c1566e561a58aec81833e131d6d..580ea5d92e99a13806d44408dfe7e519a262ac5d 100644 (file)
@@ -7,6 +7,11 @@
   <link rel="stylesheet" href="static/m-dark.css" />
   <meta name="viewport" content="width=device-width, initial-scale=1.0" />
   <meta property="og:site_name" content="A Pelican Blog" />
+  <meta property="og:title" content="A Pelican Blog" />
+  <meta name="twitter:title" content="A Pelican Blog" />
+  <meta property="og:url" content="./" />
+  <meta name="twitter:card" content="summary" />
+  <meta property="og:type" content="website" />
 </head>
 <body>
 <header><nav id="navigation">
index a28302c72d29e90a0fa392481f39e89b399a8956..cc38c6bc4e3285923c4a4cff6195d2e9bd1626dc 100644 (file)
@@ -7,6 +7,11 @@
   <link rel="stylesheet" href="static/m-dark.css" />
   <meta name="viewport" content="width=device-width, initial-scale=1.0" />
   <meta property="og:site_name" content="A Pelican Blog" />
+  <meta property="og:title" content="A Pelican Blog" />
+  <meta name="twitter:title" content="A Pelican Blog" />
+  <meta property="og:url" content="./" />
+  <meta name="twitter:card" content="summary" />
+  <meta property="og:type" content="website" />
 </head>
 <body>
 <header><nav id="navigation">
index 2598fae0d7fcad20c8e2edfb9c3247f52e37b9ef..3111b5cd543d6f63ca406feb4188f6245d1bf01e 100644 (file)
@@ -7,6 +7,11 @@
   <link rel="stylesheet" href="static/m-dark.css" />
   <meta name="viewport" content="width=device-width, initial-scale=1.0" />
   <meta property="og:site_name" content="A Pelican Blog" />
+  <meta property="og:title" content="A Pelican Blog" />
+  <meta name="twitter:title" content="A Pelican Blog" />
+  <meta property="og:url" content="./" />
+  <meta name="twitter:card" content="summary" />
+  <meta property="og:type" content="website" />
 </head>
 <body>
 <header><nav id="navigation">
index fa0b81dfcad57506428e40cbd39d2673a74d27b6..ad6d781b7cbeef406f785e2df65b84fded25ce6b 100644 (file)
@@ -7,6 +7,11 @@
   <link rel="stylesheet" href="static/m-dark.css" />
   <meta name="viewport" content="width=device-width, initial-scale=1.0" />
   <meta property="og:site_name" content="A Pelican Blog" />
+  <meta property="og:title" content="A Pelican Blog" />
+  <meta name="twitter:title" content="A Pelican Blog" />
+  <meta property="og:url" content="./" />
+  <meta name="twitter:card" content="summary" />
+  <meta property="og:type" content="website" />
 </head>
 <body>
 <header><nav id="navigation">
index 87e3477fda5c2c6f31ae80b5e1713d5449965b9a..5753759b84ada50f51adf24ca5318456ecf47295 100644 (file)
@@ -7,6 +7,11 @@
   <link rel="stylesheet" href="static/m-dark.css" />
   <meta name="viewport" content="width=device-width, initial-scale=1.0" />
   <meta property="og:site_name" content="A Pelican Blog" />
+  <meta property="og:title" content="A Pelican Blog" />
+  <meta name="twitter:title" content="A Pelican Blog" />
+  <meta property="og:url" content="./" />
+  <meta name="twitter:card" content="summary" />
+  <meta property="og:type" content="website" />
 </head>
 <body>
 <header><nav id="navigation">
diff --git a/pelican-theme/test/blog_html_escape/archives.html b/pelican-theme/test/blog_html_escape/archives.html
new file mode 100644 (file)
index 0000000..69fad2a
--- /dev/null
@@ -0,0 +1,89 @@
+<!DOCTYPE html>
+<html lang="en" prefix="og: http://ogp.me/ns#">
+<head>
+  <meta charset="UTF-8" />
+  <title>&lt;&amp;&gt; in blog name</title>
+  <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Source+Code+Pro:400,400i,600%7CSource+Sans+Pro:400,400i,600,600i" />
+  <link rel="stylesheet" href="static/m-dark.css" />
+  <link rel="next" href="index2.html?and&amp;in&amp;url=&#34;&#34;" />
+  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+  <meta property="og:site_name" content="&lt;&amp;&gt; in blog name" />
+  <meta property="og:title" content="&lt;&amp;&gt; in blog name" />
+  <meta name="twitter:title" content="&lt;&amp;&gt; in blog name" />
+  <meta property="og:url" content="archives.html?and&amp;in&amp;url=&#34;&#34;" />
+  <meta name="twitter:card" content="summary" />
+  <meta property="og:type" content="website" />
+</head>
+<body>
+<header><nav id="navigation">
+  <div class="m-container">
+    <div class="m-row">
+      <a href="./" id="m-navbar-brand" class="m-col-t-9 m-col-m-none m-left-m">&lt;&amp;&gt; in site name</a>
+    </div>
+  </div>
+</nav></header>
+<main>
+<div class="m-container">
+  <div class="m-row">
+    <div class="m-col-m-10">
+      <article>
+        <header>
+          <h1><a href="article-jumbo.html?and&amp;in&amp;url=&#34;&#34;" rel="bookmark" title="Permalink to Article with &lt;&amp;&gt; — a &lt;&amp;&gt; jumbo one">
+            <time class="m-date" datetime="2017-12-10T00:00:00+00:00">
+              Dec <span class="m-date-day">10</span> 2017
+            </time>
+            Article with &lt;&amp;&gt; — a &lt;&amp;&gt; jumbo one
+          </a></h1>
+          <p>And &lt;&amp;&gt; in summary.</p>
+        </header>
+        <div class="m-clearfix-l"></div>
+<!-- content -->
+<p>And &lt;&amp;&gt; in content.</p>
+<!-- /content -->
+        <footer>
+          <p>Posted by <a href="author-and-in-author.html?and&amp;in&amp;url=&#34;&#34;">And &lt;&amp;&gt; in author</a> on <time datetime="2017-12-10T00:00:00+00:00">Dec 10, 2017</time> in <a href="category-and-in-category.html?and&amp;in&amp;url=&#34;&#34;">And &lt;&amp;&gt; in category</a>. Tags: <a href="tag-and-in-tag.html?and&amp;in&amp;url=&#34;&#34;">And &lt;&amp;&gt; in tag</a>.</p>
+        </footer>
+      </article>
+      <div class="m-article-pagination">page 1 | <a href="index2.html?and&amp;in&amp;url=&#34;&#34;">older articles &raquo;</a></div>
+    </div>
+    <nav class="m-navpanel m-col-m-2">
+      <h3>Categories</h3>
+      <ol class="m-block-bar-m">
+        <li><a href="category-and-in-category.html?and&amp;in&amp;url=&#34;&#34;">And &lt;&amp;&gt; in category</a></li>
+      </ol>
+      <h3>Authors</h3>
+      <ol class="m-block-bar-m">
+        <li><a href="author-and-in-author.html?and&amp;in&amp;url=&#34;&#34;">And &lt;&amp;&gt; in author</a></li>
+      </ol>
+      <h3>Tag cloud</h3>
+      <ul class="m-tagcloud">
+        <li class="m-tag-5"><a href="tag-and-in-tag.html?and&amp;in&amp;url=&#34;&#34;">And &lt;&amp;&gt; in tag</a></li>
+      </ul>
+    </nav>
+  </div>
+</div>
+</main>
+<footer><nav>
+  <div class="m-container">
+    <div class="m-row">
+      <div class="m-col-s-3 m-col-t-6">
+      </div>
+      <div class="m-col-s-3 m-col-t-6">
+        <h3><a href="./">An &lt;&amp;&gt; in link</a></h3>
+        <ul>
+        </ul>
+      </div>
+      <div class="m-clearfix-t"></div>
+      <div class="m-col-s-3 m-col-t-6">
+      </div>
+      <div class="m-col-s-3 m-col-t-6">
+        <h3><a href="archives.html?and&amp;in&amp;url=&#34;&#34;">Blog</a></h3>
+        <ul>
+          <li><a href="category-and-in-category.html?and&amp;in&amp;url=&#34;&#34;">And &lt;&amp;&gt; in category</a></li>
+        </ul>
+      </div>
+    </div>
+  </div>
+</nav></footer>
+</body>
+</html>
diff --git a/pelican-theme/test/blog_html_escape/archives2.html b/pelican-theme/test/blog_html_escape/archives2.html
new file mode 100644 (file)
index 0000000..dd65349
--- /dev/null
@@ -0,0 +1,86 @@
+<!DOCTYPE html>
+<html lang="en" prefix="og: http://ogp.me/ns#">
+<head>
+  <meta charset="UTF-8" />
+  <title>&lt;&amp;&gt; in blog name</title>
+  <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Source+Code+Pro:400,400i,600%7CSource+Sans+Pro:400,400i,600,600i" />
+  <link rel="stylesheet" href="static/m-dark.css" />
+  <link rel="prev" href="index.html?and&amp;in&amp;url=&#34;&#34;" />
+  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+  <meta property="og:site_name" content="&lt;&amp;&gt; in blog name" />
+  <meta property="og:title" content="&lt;&amp;&gt; in blog name" />
+  <meta name="twitter:title" content="&lt;&amp;&gt; in blog name" />
+  <meta property="og:url" content="archives.html?and&amp;in&amp;url=&#34;&#34;" />
+  <meta name="twitter:card" content="summary" />
+  <meta property="og:type" content="website" />
+</head>
+<body>
+<header><nav id="navigation">
+  <div class="m-container">
+    <div class="m-row">
+      <a href="./" id="m-navbar-brand" class="m-col-t-9 m-col-m-none m-left-m">&lt;&amp;&gt; in site name</a>
+    </div>
+  </div>
+</nav></header>
+<main>
+<div class="m-container">
+  <div class="m-row">
+    <div class="m-col-m-10">
+      <article>
+        <header>
+          <h1><a href="article.html?and&amp;in&amp;url=&#34;&#34;" rel="bookmark" title="Permalink to Article with &lt;&amp;&gt; in title">
+            <time class="m-date" datetime="2017-12-09T00:00:00+00:00">
+              Dec <span class="m-date-day">09</span> 2017
+            </time>
+            Article with &lt;&amp;&gt; in title
+          </a></h1>
+          <p>And &lt;&amp;&gt; in summary.</p>
+        </header>
+        <footer>
+          <p>Posted by <a href="author-and-in-author.html?and&amp;in&amp;url=&#34;&#34;">And &lt;&amp;&gt; in author</a> on <time datetime="2017-12-09T00:00:00+00:00">Dec 09, 2017</time> in <a href="category-and-in-category.html?and&amp;in&amp;url=&#34;&#34;">And &lt;&amp;&gt; in category</a>. Tags: <a href="tag-and-in-tag.html?and&amp;in&amp;url=&#34;&#34;">And &lt;&amp;&gt; in tag</a>.</p>
+        </footer>
+        <div class="m-clearfix-l"></div>
+      </article>
+      <div class="m-article-pagination"><a href="index.html?and&amp;in&amp;url=&#34;&#34;">&laquo; newer articles</a> | page 2</div>
+    </div>
+    <nav class="m-navpanel m-col-m-2">
+      <h3>Categories</h3>
+      <ol class="m-block-bar-m">
+        <li><a href="category-and-in-category.html?and&amp;in&amp;url=&#34;&#34;">And &lt;&amp;&gt; in category</a></li>
+      </ol>
+      <h3>Authors</h3>
+      <ol class="m-block-bar-m">
+        <li><a href="author-and-in-author.html?and&amp;in&amp;url=&#34;&#34;">And &lt;&amp;&gt; in author</a></li>
+      </ol>
+      <h3>Tag cloud</h3>
+      <ul class="m-tagcloud">
+        <li class="m-tag-5"><a href="tag-and-in-tag.html?and&amp;in&amp;url=&#34;&#34;">And &lt;&amp;&gt; in tag</a></li>
+      </ul>
+    </nav>
+  </div>
+</div>
+</main>
+<footer><nav>
+  <div class="m-container">
+    <div class="m-row">
+      <div class="m-col-s-3 m-col-t-6">
+      </div>
+      <div class="m-col-s-3 m-col-t-6">
+        <h3><a href="./">An &lt;&amp;&gt; in link</a></h3>
+        <ul>
+        </ul>
+      </div>
+      <div class="m-clearfix-t"></div>
+      <div class="m-col-s-3 m-col-t-6">
+      </div>
+      <div class="m-col-s-3 m-col-t-6">
+        <h3><a href="archives.html?and&amp;in&amp;url=&#34;&#34;">Blog</a></h3>
+        <ul>
+          <li><a href="category-and-in-category.html?and&amp;in&amp;url=&#34;&#34;">And &lt;&amp;&gt; in category</a></li>
+        </ul>
+      </div>
+    </div>
+  </div>
+</nav></footer>
+</body>
+</html>
index c90614af07efec2ab47fe0d03d4cba009407feff..deee85d14aae80dae162f693876567e0d21e5012 100644 (file)
@@ -8,6 +8,11 @@
   <link rel="next" href="index2.html?and&amp;in&amp;url=&#34;&#34;" />
   <meta name="viewport" content="width=device-width, initial-scale=1.0" />
   <meta property="og:site_name" content="&lt;&amp;&gt; in blog name" />
+  <meta property="og:title" content="&lt;&amp;&gt; in blog name" />
+  <meta name="twitter:title" content="&lt;&amp;&gt; in blog name" />
+  <meta property="og:url" content="./" />
+  <meta name="twitter:card" content="summary" />
+  <meta property="og:type" content="website" />
 </head>
 <body>
 <header><nav id="navigation">
index fe02062783c0078fc606e5bb56a4136203aa7fec..1b35775000d01112a7e8899766b55992247c554d 100644 (file)
@@ -8,6 +8,11 @@
   <link rel="prev" href="index.html?and&amp;in&amp;url=&#34;&#34;" />
   <meta name="viewport" content="width=device-width, initial-scale=1.0" />
   <meta property="og:site_name" content="&lt;&amp;&gt; in blog name" />
+  <meta property="og:title" content="&lt;&amp;&gt; in blog name" />
+  <meta name="twitter:title" content="&lt;&amp;&gt; in blog name" />
+  <meta property="og:url" content="./" />
+  <meta name="twitter:card" content="summary" />
+  <meta property="og:type" content="website" />
 </head>
 <body>
 <header><nav id="navigation">
index c4898ca9bcc58c49d095978521517247149e33fc..7a0cd47f9824276bc56c8e9d6a3cf995b8aea020 100644 (file)
@@ -7,6 +7,11 @@
   <link rel="stylesheet" href="static/m-dark.css" />
   <meta name="viewport" content="width=device-width, initial-scale=1.0" />
   <meta property="og:site_name" content="A Pelican Blog" />
+  <meta property="og:title" content="A Pelican Blog" />
+  <meta name="twitter:title" content="A Pelican Blog" />
+  <meta property="og:url" content="./" />
+  <meta name="twitter:card" content="summary" />
+  <meta property="og:type" content="website" />
 </head>
 <body>
 <header><nav id="navigation">
index 808494a6962e8719ea55fb0d4f85dffcaca18472..a271f66f6937ab38b30299c32e47fdbc0d5c6679 100644 (file)
@@ -7,6 +7,11 @@
   <link rel="stylesheet" href="static/m-dark.css" />
   <meta name="viewport" content="width=device-width, initial-scale=1.0" />
   <meta property="og:site_name" content="A Pelican Blog" />
+  <meta property="og:title" content="A Pelican Blog" />
+  <meta name="twitter:title" content="A Pelican Blog" />
+  <meta property="og:url" content="./" />
+  <meta name="twitter:card" content="summary" />
+  <meta property="og:type" content="website" />
 </head>
 <body>
 <header><nav id="navigation">
index 5282081dab870d1d340acff1e6ef9d61c4bd7015..8db4e79b8f08be2d5c8413032ed0f560ba9f1dca 100644 (file)
@@ -8,6 +8,11 @@
   <link rel="next" href="index2.html" />
   <meta name="viewport" content="width=device-width, initial-scale=1.0" />
   <meta property="og:site_name" content="A Pelican Blog" />
+  <meta property="og:title" content="A Pelican Blog" />
+  <meta name="twitter:title" content="A Pelican Blog" />
+  <meta property="og:url" content="./" />
+  <meta name="twitter:card" content="summary" />
+  <meta property="og:type" content="website" />
 </head>
 <body>
 <header><nav id="navigation">
index ae1941e7d8b1b6608719f4972b87013ca32023a2..1e790f825db58a31c32c98e425741fc4842b51a0 100644 (file)
@@ -9,6 +9,11 @@
   <link rel="next" href="index3.html" />
   <meta name="viewport" content="width=device-width, initial-scale=1.0" />
   <meta property="og:site_name" content="A Pelican Blog" />
+  <meta property="og:title" content="A Pelican Blog" />
+  <meta name="twitter:title" content="A Pelican Blog" />
+  <meta property="og:url" content="./" />
+  <meta name="twitter:card" content="summary" />
+  <meta property="og:type" content="website" />
 </head>
 <body>
 <header><nav id="navigation">
index 00a4c679bdd6c2f834ee7423437feebc7f34d095..0aad92577c1225b53d9f5eef5c67b095c95b6baf 100644 (file)
@@ -8,6 +8,11 @@
   <link rel="prev" href="index2.html" />
   <meta name="viewport" content="width=device-width, initial-scale=1.0" />
   <meta property="og:site_name" content="A Pelican Blog" />
+  <meta property="og:title" content="A Pelican Blog" />
+  <meta name="twitter:title" content="A Pelican Blog" />
+  <meta property="og:url" content="./" />
+  <meta name="twitter:card" content="summary" />
+  <meta property="og:type" content="website" />
 </head>
 <body>
 <header><nav id="navigation">
index 8400b73c94e01179cac831f3edbc69252957601e..9a80bd31e529d18face44cfabb74f2d451708740 100644 (file)
@@ -7,6 +7,11 @@
   <link rel="stylesheet" href="static/m-dark.css" />
   <meta name="viewport" content="width=device-width, initial-scale=1.0" />
   <meta property="og:site_name" content="A Pelican Blog" />
+  <meta property="og:title" content="A Pelican Blog" />
+  <meta name="twitter:title" content="A Pelican Blog" />
+  <meta property="og:url" content="./" />
+  <meta name="twitter:card" content="summary" />
+  <meta property="og:type" content="website" />
 </head>
 <body>
 <header><nav id="navigation">
index 9fbb797c900e58d274f94e26c74e73ed8c299767..f1b4fa0ab9e078f4fa7b634866fdfb1dfdbee34b 100644 (file)
@@ -7,6 +7,11 @@
   <link rel="stylesheet" href="static/m-dark.css" />
   <meta name="viewport" content="width=device-width, initial-scale=1.0" />
   <meta property="og:site_name" content="Your Brand Blog" />
+  <meta property="og:title" content="Your Brand Blog" />
+  <meta name="twitter:title" content="Your Brand Blog" />
+  <meta property="og:url" content="./" />
+  <meta name="twitter:card" content="summary" />
+  <meta property="og:type" content="website" />
 </head>
 <body>
 <header><nav id="navigation">
index 3ab50ae4016d0db45665f4627a2c9e69c2435a1e..707e4a37ea46e390ebf5ddd6e5ef4a6289358970 100644 (file)
@@ -7,6 +7,11 @@
   <link rel="stylesheet" href="static/m-dark.css" />
   <meta name="viewport" content="width=device-width, initial-scale=1.0" />
   <meta property="og:site_name" content="A Pelican Blog" />
+  <meta property="og:title" content="A Pelican Blog" />
+  <meta name="twitter:title" content="A Pelican Blog" />
+  <meta property="og:url" content="./" />
+  <meta name="twitter:card" content="summary" />
+  <meta property="og:type" content="website" />
 </head>
 <body>
 <header><nav id="navigation">
index 145015bb24c8bb6b5ddb17c7a3fbd370c7c628f2..37f36c8ef8ff86b2b85bf95565befe4f8a6f6cce 100644 (file)
@@ -7,6 +7,11 @@
   <link rel="stylesheet" href="static/m-dark.css" />
   <meta name="viewport" content="width=device-width, initial-scale=1.0" />
   <meta property="og:site_name" content="A Pelican Blog" />
+  <meta property="og:title" content="A Pelican Blog" />
+  <meta name="twitter:title" content="A Pelican Blog" />
+  <meta property="og:url" content="./" />
+  <meta name="twitter:card" content="summary" />
+  <meta property="og:type" content="website" />
 </head>
 <body>
 <header><nav id="navigation">
index 1ba0a3be28d367e4ae91da0590425beb89d1b608..c274aede9ebc9922bbf0478bb63581ddff344c94 100644 (file)
@@ -7,6 +7,11 @@
   <link rel="stylesheet" href="static/m-dark.css" />
   <meta name="viewport" content="width=device-width, initial-scale=1.0" />
   <meta property="og:site_name" content="A &lt;&amp;&gt; blog" />
+  <meta property="og:title" content="A &lt;&amp;&gt; blog" />
+  <meta name="twitter:title" content="A &lt;&amp;&gt; blog" />
+  <meta property="og:url" content="./" />
+  <meta name="twitter:card" content="summary" />
+  <meta property="og:type" content="website" />
 </head>
 <body>
 <header><nav id="navigation">
index 4292d425f77553eb6a450bf4d65c5b7f4e81548f..20e852c3ba1806305fa2cfd5757913fea6d6f7fa 100644 (file)
@@ -8,6 +8,11 @@
   <meta name="viewport" content="width=device-width, initial-scale=1.0" />
   <meta name="theme-color" content="#22272e" />
   <meta property="og:site_name" content="A Pelican Blog" />
+  <meta property="og:title" content="A Pelican Blog" />
+  <meta name="twitter:title" content="A Pelican Blog" />
+  <meta property="og:url" content="./" />
+  <meta name="twitter:card" content="summary" />
+  <meta property="og:type" content="website" />
 </head>
 <body>
 <header><nav id="navigation">
index d23029f51c72a768845d6fbbc9348fd149dc3359..0eacc7ee60b8177bf57484104098b3ccbc867299 100644 (file)
@@ -7,6 +7,11 @@
   <link rel="stylesheet" href="static/m-dark.css" />
   <meta name="viewport" content="width=device-width, initial-scale=1.0" />
   <meta property="og:site_name" content="A Pelican Blog" />
+  <meta property="og:title" content="A Pelican Blog" />
+  <meta name="twitter:title" content="A Pelican Blog" />
+  <meta property="og:url" content="./" />
+  <meta name="twitter:card" content="summary" />
+  <meta property="og:type" content="website" />
 </head>
 <body>
 <header><nav id="navigation">
index 8d8bc7aac8052afdb73a9f3d4149e7fbf2412e2e..ba89d73fb7b8781994bc4a76b082b95ac403e8ba 100644 (file)
@@ -7,6 +7,11 @@
   <link rel="stylesheet" href="static/m-dark.css" />
   <meta name="viewport" content="width=device-width, initial-scale=1.0" />
   <meta property="og:site_name" content="A Pelican Blog" />
+  <meta property="og:title" content="A Pelican Blog" />
+  <meta name="twitter:title" content="A Pelican Blog" />
+  <meta property="og:url" content="./" />
+  <meta name="twitter:card" content="summary" />
+  <meta property="og:type" content="website" />
 </head>
 <body>
 <header><nav id="navigation">
index b254dbabe6c7109968f41541536ebcf589b8850e..e56d6d2bd4cfaab3b3af7baa72839d6f732a9834 100644 (file)
@@ -36,9 +36,10 @@ class Blog(BlogTestCase):
             'FORMATTED_FIELDS': ['summary', 'description']
         })
 
-        # The archives and index page should be exactly the same
+        # The archives and index page should be exactly the same, except for
+        # og:url that points to the file itself
         self.assertEqual(*self.actual_expected_contents('index.html'))
-        self.assertEqual(*self.actual_expected_contents('archives.html', 'index.html'))
+        self.assertEqual(*self.actual_expected_contents('archives.html'))
 
         # Default and jumbo article rendering
         self.assertEqual(*self.actual_expected_contents('article.html'))
@@ -448,7 +449,11 @@ class HtmlEscape(BlogTestCase):
         # Verify that everything is properly escaped everywhere
         self.assertEqual(*self.actual_expected_contents('index.html'))
         self.assertEqual(*self.actual_expected_contents('index2.html'))
-        self.assertEqual(*self.actual_expected_contents('archives.html', 'index.html'))
-        self.assertEqual(*self.actual_expected_contents('archives2.html', 'index2.html'))
+
+        # Archives are almost the same as index, except for og:url pointing to
+        # M_BLOG_URL instead of SITEURL
+        self.assertEqual(*self.actual_expected_contents('archives.html'))
+        self.assertEqual(*self.actual_expected_contents('archives2.html'))
+
         self.assertEqual(*self.actual_expected_contents('article.html'))
         self.assertEqual(*self.actual_expected_contents('article-jumbo.html'))
index 13818fc83bee9f6b130be3dc058885a488acac58..fdd8e48f54dceeb519708e2162fce63f59b4a161 100644 (file)
@@ -184,7 +184,6 @@ class HtmlEscape(BaseTestCase):
         self.run_pelican({
             'SITENAME': 'A <&> site',
             'M_BLOG_NAME': 'A <&> blog',
-            'M_BLOG_URL': 'archives.html?and&in&url=""',
             'M_SITE_LOGO': 'image.png?and&in&url=""',
             'M_SITE_LOGO_TEXT': '<&>',
             'M_LINKS_NAVBAR1': [