structrdfal 0.1.1 → 0.1.4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +43 -32
- data/_includes/blogList.html +9 -21
- data/_includes/catag.html +2 -2
- data/_includes/footer.html +13 -11
- data/_includes/nav.html +6 -9
- data/_layouts/autopage_category.html +1 -0
- data/_layouts/autopage_tags.html +1 -1
- data/_layouts/default.html +8 -3
- data/_layouts/eventpost.html +0 -5
- data/_layouts/sitehome.html +6 -4
- data/assets/feed-icon-14x14.png +0 -0
- data/assets/feed-icon-28x28.png +0 -0
- data/assets/scripts/.DS_Store +0 -0
- metadata +11 -12
- data/_includes/blogList.html~1 +0 -100
- data/_includes/blogList.html~2 +0 -85
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 0c1498953ccad82822794c4b972168840a824966bce5beefbdac37a060f77aad
|
4
|
+
data.tar.gz: de3902e27a1968a57f33291fc9552f9e7ffc35c4c3a49b2b16d8d356ca3a03e8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: dc6f0f6910102a93b65619d79acbdaf7fd5dec6bf8f92b7f023844b6231cd876b0b6f05db5679331458f2cb5ac9b1a020930f6604e1e2f40d1f5034551c5a529
|
7
|
+
data.tar.gz: a6ee50446fc76297baebe6915d6ff9dc7ce7d64523c6d01d52a1954b148ae8060c31263d56e626bc2333f34defb09be87d97dba6237bdc027cf5cbf36ce52d8e
|
data/README.md
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
# [Structured Data RDFa Lite Jekyll theme](https://github.com/arghc/testing-repo)
|
2
2
|
|
3
3
|
[![Jekyll](https://img.shields.io/badge/jekyll-%3E%3D%203.7-blue.svg)](https://jekyllrb.com/)
|
4
|
-
[![Ruby
|
4
|
+
[![Ruby Gem](https://badge.fury.io/rb/structrdfal.svg)](https://badge.fury.io/rb/structrdfal)
|
5
5
|
|
6
6
|
This Jekyll theme ([live demo](http://struct.arghc.ca/)) provides structured data markup in the form of [RDFa Lite](https://www.w3.org/TR/rdfa-lite/) for maximum human readability and smaller files (less repetition than [JSON-LD](https://json-ld.org/), [microdata](https://www.w3.org/TR/microdata/), or full [RDFa](https://rdfa.info/). Additionally, for best practices purposes it is based on [HTML5 Boilerplate](https://html5boilerplate.com/) (v7.0.1), hence some additional directories (styles, scripts, html5-boilerplate-docs, .colophon) and files (.editorconfig, .htaccess, 404.html, site.webmanifest, robots.txt, humans.txt, browserconfig.xml).
|
7
7
|
|
@@ -42,26 +42,26 @@ Or install it yourself as:
|
|
42
42
|
|
43
43
|
## Usage
|
44
44
|
### `_layouts`
|
45
|
-
`sitehome.html` is a slight modification from default.html based on the idea that some of the logic needed to have just one template seemed like an unnecessary burden to put on **every** page in the site. I may re-engineer things or just change my mind about that later.
|
46
|
-
`default.html` the base for everything else
|
47
|
-
`aboutPage.html` you should have one. sets WebPage type for you.
|
48
|
-
`contactPage.html` you should have one. sets WebPage type for you. contactform.html is included in assets if you want to modify mine
|
49
|
-
`bloghome.html` schema.org compliant Blog (sort of, see notes in comments), lists and paginates all your posts
|
50
|
-
`event.html` schema.org compliant Event page, uses the default layout. See eventform.html for some other Event types.
|
51
|
-
`eventpost.html` schema.org compliant Event post, uses the BlogPosting layout.
|
52
|
-
`page.html` just the default generated from "jekyll new"
|
53
|
-
`post.html` schema.org compliant BlogPosting (sort of, see notes in bloghome)
|
54
|
-
|
55
|
-
`autopage_category.html`
|
56
|
-
`autopage_tags.html` the templates that paginate-v2 autopages expect.
|
45
|
+
* `sitehome.html` is a slight modification from default.html based on the idea that some of the logic needed to have just one template seemed like an unnecessary burden to put on **every** page in the site. I may re-engineer things or just change my mind about that later.
|
46
|
+
* `default.html` the base for everything else
|
47
|
+
* `aboutPage.html` you should have one. sets WebPage type for you.
|
48
|
+
* `contactPage.html` you should have one. sets WebPage type for you. contactform.html is included in assets if you want to modify mine
|
49
|
+
* `bloghome.html` schema.org compliant Blog (sort of, see notes in comments), lists and paginates all your posts
|
50
|
+
* `event.html` schema.org compliant Event page, uses the default layout. See eventform.html for some other Event types.
|
51
|
+
* `eventpost.html` schema.org compliant Event post, uses the BlogPosting layout.
|
52
|
+
* `page.html` just the default generated from "jekyll new"
|
53
|
+
* `post.html` schema.org compliant BlogPosting (sort of, see notes in bloghome)
|
54
|
+
|
55
|
+
* `autopage_category.html`
|
56
|
+
* `autopage_tags.html` the templates that paginate-v2 autopages expect.
|
57
57
|
|
58
58
|
### `_includes`
|
59
59
|
|
60
|
-
`blogList.html` implements pagination-v2 logic and uses autopages for tags and categories
|
61
|
-
`catag.html` where the list of linked categories and tags are generated
|
62
|
-
`catag-old.html` before autopages, a single page list of categories, and another for tags were generated. These links go there.
|
63
|
-
`footer.html` contact info for you, javascript library inclusion, google analytics
|
64
|
-
`nav.html` site navigation included on each page. the current page link is disabled for proper usability.
|
60
|
+
* `blogList.html` implements pagination-v2 logic and uses autopages for tags and categories
|
61
|
+
* `catag.html` where the list of linked categories and tags are generated
|
62
|
+
* `catag-old.html` before autopages, a single page list of categories, and another for tags were generated. These links go there.
|
63
|
+
* `footer.html` contact info for you, javascript library inclusion, google analytics
|
64
|
+
* `nav.html` site navigation included on each page. the current page link is disabled for proper usability.
|
65
65
|
|
66
66
|
### `assets`
|
67
67
|
Everything in the assets directory should be moved out to the root directory of your site where they are EXPECTED (.colophon is optional and just for your information). The images are there mostly for your sizing reference when you create your own. Obviously, customize away, nothing needs to remain as-is.
|
@@ -74,26 +74,37 @@ Actually, `eventform.html` and `contactform.html` are forms that I use on my sit
|
|
74
74
|
I'm just learning Sass, so the only thing in `_sass` directory is the pieces for `normalize-scss`, read about it in the `.colophon`
|
75
75
|
|
76
76
|
### `_config.yml`
|
77
|
-
`title`/`sitemark`: Page titles will be created from either "sitemark - page.title" or "page.title - site.title", so config `sitemark` if so desired.
|
78
|
-
`email`: is used in several places with nothing to prevent spammers from scraping it, you have been warned.
|
79
|
-
`author`: is used in multiple places in the metadata.
|
80
|
-
`scPath`: the path to your (java)scripts, I recommend `/scripts/`
|
81
|
-
`stPath`: the path to your CSS, I recommend `/styles/`
|
77
|
+
* `title`/`sitemark`: Page titles will be created from either "sitemark - page.title" or "page.title - site.title", so config `sitemark` if so desired.
|
78
|
+
* `email`: is used in several places with nothing to prevent spammers from scraping it, you have been warned.
|
79
|
+
* `author`: is used in multiple places in the metadata.
|
80
|
+
* `scPath`: the path to your (java)scripts, I recommend `/scripts/`
|
81
|
+
* `stPath`: the path to your CSS, I recommend `/styles/`
|
82
82
|
|
83
83
|
The `jekyll-paginate-v2` plugin is expected
|
84
|
+
* in the configuring of paginate, to handle multi-word tags and categories, use
|
85
|
+
```
|
86
|
+
autopages:
|
87
|
+
categories:
|
88
|
+
slugify:
|
89
|
+
mode: pretty
|
90
|
+
tags:
|
91
|
+
slugify:
|
92
|
+
mode: pretty
|
93
|
+
```
|
84
94
|
|
85
95
|
### These are OPTIONAL
|
86
|
-
`specialty`: used in `WebPage` Schema: "One of the domain specialities to which this web page's content applies."
|
87
|
-
`google_analytics`: your Google Analytics code
|
88
|
-
`javascriptON`: set if you want the HTML5 Boilerplate JS recommended libraries (`main.js`, `plugins.js`, `jquery-3.3.1.min.js`, `modernizr-3.6.0.min.js`) included at the bottom of *each* page
|
89
|
-
`copynotice`: something like "Copyright Acme 1999 - All rights reserved." or a link to creative commons pages is fine. ([Dublin Core usage guide](http://www.dublincore.org/documents/2001/04/12/usageguide/sectc/#rights), [Dublin Core example code](http://www.dublincore.org/documents/2001/04/12/usageguide/simple-html/#rights)). Currently only used in metadata, I'll get around to putting it in the footer at some point.
|
96
|
+
* `specialty`: used in `WebPage` Schema: "One of the domain specialities to which this web page's content applies."
|
97
|
+
* `google_analytics`: your Google Analytics code
|
98
|
+
* `javascriptON`: set if you want the HTML5 Boilerplate JS recommended libraries (`main.js`, `plugins.js`, `jquery-3.3.1.min.js`, `modernizr-3.6.0.min.js`) included at the bottom of *each* page
|
99
|
+
* `copynotice`: something like "Copyright Acme 1999 - All rights reserved." or a link to creative commons pages is fine. ([Dublin Core usage guide](http://www.dublincore.org/documents/2001/04/12/usageguide/sectc/#rights), [Dublin Core example code](http://www.dublincore.org/documents/2001/04/12/usageguide/simple-html/#rights)). Currently only used in metadata, I'll get around to putting it in the footer at some point.
|
90
100
|
|
91
101
|
### Per Page Frontmatter Options
|
92
|
-
`description`: if a `page.description` does not exist, the `site.description` is used in the metadata
|
93
|
-
`meta-creator`: if a page is authored by someone not the site `author`, a `page.meta-creator` can be set
|
94
|
-
`keywords`: `keywords` for HTML metadata and Dublin Core, maybe later for one or another Schema (note that blogpost `tags` and `categories` are added to `keywords` for metadata purposes).
|
95
|
-
`subject`: similar but different from `keywords`. ([Dublin Core usage guide](http://www.dublincore.org/documents/2001/04/12/usageguide/sectb/#subject), [Dublin Core qualifer options](http://www.dublincore.org/documents/dcmes-qualifiers/#subject))
|
96
|
-
`creation-date`: [Dublin Core date qualifier options](http://www.dublincore.org/documents/dcmes-qualifiers/#date) (will be integrated into the schema metadata at some point.)
|
102
|
+
* `description`: if a `page.description` does not exist, the `site.description` is used in the metadata
|
103
|
+
* `meta-creator`: if a page is authored by someone not the site `author`, a `page.meta-creator` can be set
|
104
|
+
* `keywords`: `keywords` for HTML metadata and Dublin Core, maybe later for one or another Schema (note that blogpost `tags` and `categories` are added to `keywords` for metadata purposes).
|
105
|
+
* `subject`: similar but different from `keywords`. ([Dublin Core usage guide](http://www.dublincore.org/documents/2001/04/12/usageguide/sectb/#subject), [Dublin Core qualifer options](http://www.dublincore.org/documents/dcmes-qualifiers/#subject))
|
106
|
+
* `creation-date`: [Dublin Core date qualifier options](http://www.dublincore.org/documents/dcmes-qualifiers/#date) (will be integrated into the schema metadata at some point.)
|
107
|
+
* `excss`: an EXtra CSS array for more .css files in the styles directory to include
|
97
108
|
|
98
109
|
Read the comments in the `default.html` layout for more options.
|
99
110
|
|
data/_includes/blogList.html
CHANGED
@@ -30,6 +30,9 @@
|
|
30
30
|
{% include catag.html list=post -%}
|
31
31
|
</header>
|
32
32
|
<span property="description">{{ post.excerpt }}</span>
|
33
|
+
{% if post.excerpt != post.content -%}
|
34
|
+
<a href="{{ post.url | relative_url }}">Read more</a>
|
35
|
+
{%- endif %}
|
33
36
|
</article>
|
34
37
|
{%- endfor -%}
|
35
38
|
</section>
|
@@ -39,44 +42,29 @@
|
|
39
42
|
-->
|
40
43
|
{% if paginator.total_pages > 1 -%}
|
41
44
|
<nav class="blog-pager">
|
42
|
-
<ul>
|
43
|
-
|
44
45
|
{% if paginator.previous_page -%}
|
45
46
|
{% if paginator.first_page -%}
|
46
|
-
<
|
47
|
-
<a href="{{ paginator.first_page_path | prepend: site.baseurl | replace: '//', '/' }}">First</a>
|
48
|
-
</li>
|
47
|
+
<a class="previous" href="{{ paginator.first_page_path | prepend: site.baseurl | replace: '//', '/' }}">First</a>
|
49
48
|
{%- endif %}
|
50
|
-
<
|
51
|
-
<a href="{{ paginator.previous_page_path | prepend: site.baseurl | replace: '//', '/' }}">← Newer Posts</a>
|
52
|
-
</li>
|
49
|
+
<a class="previous" href="{{ paginator.previous_page_path | prepend: site.baseurl | replace: '//', '/' }}">← Newer Posts</a>
|
53
50
|
{%- endif %}
|
54
51
|
|
55
52
|
{% if paginator.page_trail -%}
|
56
53
|
{% for trail in paginator.page_trail -%}
|
57
54
|
{%- if page.url == trail.path %}
|
58
|
-
|
59
|
-
<a rel="self" title="{{trail.title}}">{{ trail.num }}</a>
|
55
|
+
<a rel="self" class="selected" title="{{trail.title}}">{{ trail.num }}</a>
|
60
56
|
{%- else %}
|
61
|
-
<li>
|
62
57
|
<a href="{{ trail.path | prepend: site.baseurl | replace: '//', '/' }}" title="{{trail.title}}">{{ trail.num }}</a>
|
63
58
|
{%- endif %}
|
64
|
-
</li>
|
65
59
|
{%- endfor -%}
|
66
60
|
{%- endif %}
|
67
61
|
|
68
62
|
{% if paginator.next_page -%}
|
69
|
-
|
70
|
-
<a href="{{ paginator.next_page_path | prepend: site.baseurl | replace: '//', '/' }}">Older Posts →</a>
|
71
|
-
</li>
|
63
|
+
<a class="next" href="{{ paginator.next_page_path | prepend: site.baseurl | replace: '//', '/' }}">Older Posts →</a>
|
72
64
|
{% if paginator.last_page -%}
|
73
|
-
|
74
|
-
<a href="{{ paginator.last_page_path | prepend: site.baseurl | replace: '//', '/' }}">Last</a>
|
75
|
-
</li>
|
65
|
+
<a class="previous" href="{{ paginator.last_page_path | prepend: site.baseurl | replace: '//', '/' }}">Last</a>
|
76
66
|
{%- endif %}
|
77
67
|
{%- endif %}
|
78
|
-
|
79
|
-
</ul>
|
80
68
|
{%- endif %}
|
81
69
|
</nav>
|
82
|
-
<p class="rss-subscribe">subscribe <a href="{{ "/feed.xml" | relative_url }}">via RSS</a></p>
|
70
|
+
<p class="rss-subscribe"><img src="{{ "/feed-icon-28x28.png" | relative_url }}" alt=""> subscribe <a href="{{ "/feed.xml" | relative_url }}">via RSS</a></p>
|
data/_includes/catag.html
CHANGED
@@ -3,13 +3,13 @@
|
|
3
3
|
<div class="catag">
|
4
4
|
{% for category in include.list.categories -%}
|
5
5
|
{%- unless category=="blog" -%}
|
6
|
-
<a class="categories" href="{{ site.blogPath }}categories/{{ category | slugify }}"
|
6
|
+
<a class="categories" href="{{ site.blogPath }}categories/{{ category | slugify: 'pretty' }}"
|
7
7
|
title="List of posts in the '{{ category }}' category"
|
8
8
|
property="articleSection" content="{{ category }}">{{ category }}</a>
|
9
9
|
{% endunless -%}
|
10
10
|
{% endfor -%}
|
11
11
|
{% for tag in include.list.tags -%}
|
12
|
-
<a class="tags" href="{{ site.blogPath }}tags/{{ tag | slugify }}"
|
12
|
+
<a class="tags" href="{{ site.blogPath }}tags/{{ tag | slugify: 'pretty' }}"
|
13
13
|
title="List of posts with the '{{ tag }}' tag"
|
14
14
|
property="keywords" content="{{ tag }}">{{ tag }}</a>
|
15
15
|
{% endfor -%}
|
data/_includes/footer.html
CHANGED
@@ -1,18 +1,20 @@
|
|
1
|
-
<footer>
|
2
|
-
<
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
1
|
+
<div id="footer-box">
|
2
|
+
<footer id="page-footer">
|
3
|
+
<address property="author" typeof="Person">Contact <a href="mailto:{{ site.email }}" property="name" content="{{ site.author }}">{{ site.author }}</a></address>
|
4
|
+
<p {% unless page.description %}property="description"{% endunless %}>{{ site.description }}</p>
|
5
|
+
{% if javascriptON -%}
|
6
|
+
<script src="{{ scPath }}vendor/modernizr-3.6.0.min.js"></script>
|
7
|
+
<script src="https://code.jquery.com/jquery-3.3.1.min.js" integrity="sha256-FgpCb/KJQlLNfOu91ta32o/NMZxltwRo8QtmkMRdAu8=" crossorigin="anonymous"></script>
|
8
|
+
<script>window.jQuery || document.write('<script src="{{ scPath }}vendor/jquery-3.3.1.min.js"><\/script>')</script>
|
9
|
+
<script src="{{ scPath }}plugins.js"></script>
|
10
|
+
<script src="{{ scPath }}main.js"></script>
|
10
11
|
{%- endif -%}
|
11
12
|
{% if site.google_analytics -%}
|
12
13
|
<script>
|
13
14
|
window.ga = function () { ga.q.push(arguments) }; ga.q = []; ga.l = +new Date;
|
14
|
-
ga('create', '{{ site.google_analytics }}, 'auto'); ga('send', 'pageview')
|
15
|
+
ga('create', '{{ site.google_analytics }}', 'auto'); ga('send', 'pageview')
|
15
16
|
</script>
|
16
17
|
<script src="https://www.google-analytics.com/analytics.js" async defer></script>
|
17
18
|
{%- endif -%}
|
18
|
-
|
19
|
+
</footer>
|
20
|
+
</div>
|
data/_includes/nav.html
CHANGED
@@ -1,14 +1,11 @@
|
|
1
|
-
{%- assign menuURLs = "/blog/|/about.html|/contact.html" | split: "|" -%}
|
2
|
-
{%- assign menuAnchors = "Blog|About|Contact" | split: "|" -%}
|
3
|
-
{%- assign menuTitles = "My blog about stuff.|About this here website.|Contact us." | split: "|" -%}
|
4
1
|
<nav id="site-nav">
|
5
|
-
{% for link in
|
6
|
-
{% capture idx %}{{ link | append: "index.html" }}{% endcapture -%}
|
2
|
+
{% for link in site.data.site-nav -%}
|
3
|
+
{% capture idx %}{{ link.url | append: "index.html" }}{% endcapture -%}
|
7
4
|
<a
|
8
|
-
{%- if page.url==link %} class="nav-self"
|
9
|
-
{%- elsif page.url contains link and page.url == idx %} class="nav-self"
|
5
|
+
{%- if page.url==link.url %} class="nav-self"
|
6
|
+
{%- elsif page.url contains link.url and page.url == idx %} class="nav-self"
|
10
7
|
{%- else %}
|
11
|
-
{%- if page.url contains link and page.url != link %} class="nav-sub"{% endif %} href="{{ link }}"
|
12
|
-
{%- endif %} title="{{
|
8
|
+
{%- if page.url contains link.url and page.url != link.url %} class="nav-sub"{% endif %} href="{{ link.url }}"
|
9
|
+
{%- endif %} title="{{ link.title }}">{{ link.anchor }}</a>
|
13
10
|
{% endfor -%}
|
14
11
|
</nav>
|
@@ -6,6 +6,7 @@ pagination:
|
|
6
6
|
enabled: true
|
7
7
|
---
|
8
8
|
<h1 property="name">AutoPage Category <b>{% if page.autopages %}{{page.autopage.display_name}}{% endif %}</b> Page {{page.pagination_info.curr_page}} of {{page.pagination_info.total_pages}}</h1>
|
9
|
+
<p class="auto-notice">This page is automagically created and paginated for each category available in the posts on this site</p>
|
9
10
|
{{ content | markdownify }}
|
10
11
|
|
11
12
|
{%- include blogList.html -%}
|
data/_layouts/autopage_tags.html
CHANGED
@@ -6,7 +6,7 @@ pagination:
|
|
6
6
|
enabled: true
|
7
7
|
---
|
8
8
|
<h1 property="title">AutoPage for Tag <b>{% if page.autopages %}{{page.autopages.display_name}}{% endif %}</b> Page {{page.pagination_info.curr_page}} of {{page.pagination_info.total_pages}}</h1>
|
9
|
-
<p>This page is automagically created and paginated for each tag available in the posts on this site</p>
|
9
|
+
<p class="auto-notice">This page is automagically created and paginated for each tag available in the posts on this site</p>
|
10
10
|
{{ content | markdownify }}
|
11
11
|
|
12
12
|
{%- include blogList.html -%}
|
data/_layouts/default.html
CHANGED
@@ -21,7 +21,7 @@
|
|
21
21
|
------------------------------------------------------------------ -->
|
22
22
|
{%- endcomment %}
|
23
23
|
<title property="dc:title">{{ preTitle }}{{ page.title }}{{ postTitle }}</title>
|
24
|
-
<meta name="description" property="dc:description" content="{{ page.description | default: site.description }}">
|
24
|
+
<meta name="description" property="dc:description" content="{{ page.description | strip_html | default: site.description }}">
|
25
25
|
{% if page.tags or page.categories or page.keywords -%}
|
26
26
|
{%- assign nothing = "" | split: ", " %}
|
27
27
|
{%- assign ptags = page.tags | default: nothing %}
|
@@ -64,6 +64,11 @@
|
|
64
64
|
<link rel="stylesheet" href="{{ site.stPath }}HTML5BP-main.css">
|
65
65
|
<link rel="stylesheet" href="{{ site.stPath }}structRDFaL.css">
|
66
66
|
{% if page.isform -%}<link rel="stylesheet" href="{{ site.stPath }}form.css">{%- endif %}
|
67
|
+
{% if page.excss -%}
|
68
|
+
{%- for css in page.excss -%}
|
69
|
+
<link rel="stylesheet" href="{{ site.stPath }}{{css}}.css">
|
70
|
+
{% endfor -%}
|
71
|
+
{%- endif -%}
|
67
72
|
|
68
73
|
<meta name="theme-color" content="#fafafa">
|
69
74
|
</head>
|
@@ -105,13 +110,13 @@
|
|
105
110
|
<!--[if lte IE 9]>
|
106
111
|
<p class="browserupgrade">You are using an <strong>outdated</strong> browser. Please <a href="https://browsehappy.com/">upgrade your browser</a> to improve your experience and security.</p>
|
107
112
|
<![endif]-->
|
113
|
+
{% include header.html -%}
|
108
114
|
{%- if mainType %}
|
109
115
|
<main tabindex="-1" id="main-thing" property="mainEntity" typeof="{{ mainType }}">
|
110
116
|
{%- else %}
|
111
117
|
<main tabindex="-1" id="main-thing">
|
112
|
-
<h1 property="name">{{ page.title }}</h1>
|
118
|
+
<h1 id="page-title" property="name">{{ page.title }}</h1>
|
113
119
|
{%- endif %}
|
114
|
-
<a href="/" title="Home"><img id="top-corner-logo" src="/icon.png" alt="logo"></a>
|
115
120
|
<!-- <p>default: pageType={{pageType}}, spt:{{site.pgtype}}, lpt:{{layout.pgtype}}<br />
|
116
121
|
mainType={{mainType}}, smt:{{site.mntype}}, lmt:{{layout.mntype}}</p> -->
|
117
122
|
{{ content }}
|
data/_layouts/eventpost.html
CHANGED
data/_layouts/sitehome.html
CHANGED
@@ -2,9 +2,11 @@
|
|
2
2
|
<html class="no-js" lang="en" prefix="dc: http://purl.org/dc/terms/">
|
3
3
|
<head profile="http://www.w3.org/2005/10/profile">
|
4
4
|
<meta charset="utf-8">
|
5
|
-
{%
|
6
|
-
{%-
|
7
|
-
|
5
|
+
{% unless site.title == page.title -%}
|
6
|
+
{%- if site.title -%}
|
7
|
+
{%- capture preTitle %}{{ site.title }} - {% endcapture -%}
|
8
|
+
{%- endif -%}
|
9
|
+
{%- endunless %}
|
8
10
|
|
9
11
|
<title property="dc:title">{{ preTitle }}{{ page.title }}</title>
|
10
12
|
<meta name="description" property="dc:description" content="{{ page.description | default: site.description }}">
|
@@ -47,13 +49,13 @@
|
|
47
49
|
<!--[if lte IE 9]>
|
48
50
|
<p class="browserupgrade">You are using an <strong>outdated</strong> browser. Please <a href="https://browsehappy.com/">upgrade your browser</a> to improve your experience and security.</p>
|
49
51
|
<![endif]-->
|
52
|
+
{% include header.html -%}
|
50
53
|
{%- if page.mntype -%}
|
51
54
|
<main tabindex="-1" id="main-thing" property="mainEntity" typeof="{{ page.mntype }}">
|
52
55
|
{%- else -%}
|
53
56
|
<main tabindex="-1" id="main-thing">
|
54
57
|
<h1 property="name">{{ page.title }}</h1>
|
55
58
|
{%- endif %}
|
56
|
-
<img id="top-corner-logo" src="/icon.png" alt="logo" title="Home">
|
57
59
|
{{ content }}
|
58
60
|
</main>
|
59
61
|
{% include nav.html -%}
|
Binary file
|
Binary file
|
data/assets/scripts/.DS_Store
CHANGED
Binary file
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: structrdfal
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Carol Wang
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2022-08-13 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: jekyll
|
@@ -16,14 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: '
|
19
|
+
version: '4.0'
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: '
|
26
|
+
version: '4.0'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: jekyll-paginate-v2
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -44,28 +44,28 @@ dependencies:
|
|
44
44
|
requirements:
|
45
45
|
- - "~>"
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version: '1.
|
47
|
+
version: '1.17'
|
48
48
|
type: :development
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
52
|
- - "~>"
|
53
53
|
- !ruby/object:Gem::Version
|
54
|
-
version: '1.
|
54
|
+
version: '1.17'
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
name: rake
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
59
|
- - "~>"
|
60
60
|
- !ruby/object:Gem::Version
|
61
|
-
version: '12.
|
61
|
+
version: '12.3'
|
62
62
|
type: :development
|
63
63
|
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
66
|
- - "~>"
|
67
67
|
- !ruby/object:Gem::Version
|
68
|
-
version: '12.
|
68
|
+
version: '12.3'
|
69
69
|
description: A theme focused on structured data marked up using RDFa Lite based on
|
70
70
|
HTML5 Boilerplate.
|
71
71
|
email:
|
@@ -77,8 +77,6 @@ files:
|
|
77
77
|
- LICENSE.txt
|
78
78
|
- README.md
|
79
79
|
- _includes/blogList.html
|
80
|
-
- _includes/blogList.html~1
|
81
|
-
- _includes/blogList.html~2
|
82
80
|
- _includes/catag-old.html
|
83
81
|
- _includes/catag.html
|
84
82
|
- _includes/footer.html
|
@@ -116,6 +114,8 @@ files:
|
|
116
114
|
- assets/contactform.html
|
117
115
|
- assets/eventform.html
|
118
116
|
- assets/favicon.ico
|
117
|
+
- assets/feed-icon-14x14.png
|
118
|
+
- assets/feed-icon-28x28.png
|
119
119
|
- assets/humans.txt
|
120
120
|
- assets/icon.png
|
121
121
|
- assets/robots.txt
|
@@ -151,8 +151,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
151
151
|
- !ruby/object:Gem::Version
|
152
152
|
version: '0'
|
153
153
|
requirements: []
|
154
|
-
|
155
|
-
rubygems_version: 2.7.6
|
154
|
+
rubygems_version: 3.0.3.1
|
156
155
|
signing_key:
|
157
156
|
specification_version: 4
|
158
157
|
summary: Structured Data using RDFa Lite.
|
data/_includes/blogList.html~1
DELETED
@@ -1,100 +0,0 @@
|
|
1
|
-
{%- if layout.blog-list-title -%}
|
2
|
-
{%- capture blTitle %}{{ layout.blog-list-title }}{% endcapture -%}
|
3
|
-
{%- elsif page.blog-list-title -%}
|
4
|
-
{%- capture blTitle %}{{ page.blog-list-title }}{% endcapture -%}
|
5
|
-
{%- endif -%}
|
6
|
-
<section class="blog-list">
|
7
|
-
{% if blTitle %}<h2>{{ blTitle }}</h2>{% endif -%}
|
8
|
-
<!-- This loops through the paginated posts -->
|
9
|
-
{% for post in paginator.posts -%}
|
10
|
-
<article typeof="BlogPosting">
|
11
|
-
<header><h3><a class="post-link" href="{{ post.url | relative_url }}"
|
12
|
-
property="headline" content="{{ post.title }}">{{ post.title | escape }}</a></h3>
|
13
|
-
<time property="datePublished"
|
14
|
-
content="{{ post.date | date_to_xmlschema }}"
|
15
|
-
class="post-date">{{ post.date | date: "%b %-d, %Y"}}</time>
|
16
|
-
<!-- Google requires that publisher be an Organization vs Person
|
17
|
-
(as the schema.org definition says it can be). Just saying
|
18
|
-
that the Publisher is an Organization is insufficient because
|
19
|
-
Organizations *require* a logo. This is a very stupid can of
|
20
|
-
worms that I am ignoring. Feel free to fix it for yourself,
|
21
|
-
though. That starts with the line below.
|
22
|
-
|
23
|
-
See https://webmasters.stackexchange.com/questions/110332/personal-blog-using-structured-data-fails-validation-on-publisher/110350#110350
|
24
|
-
|
25
|
-
Also, I have made that line invisible because I'm using the
|
26
|
-
site author information, and that info is visible in the footer,
|
27
|
-
so I'm not marking up lots of invisible things that Google frowns
|
28
|
-
on. If you've got a multi-author blog, then of course, you should
|
29
|
-
visibly list the authors. -->
|
30
|
-
<a property="author publisher" typeof="person"><meta property="name" content="{{ site.author }}" /></a>
|
31
|
-
<div class="catag">
|
32
|
-
{% for category in post.categories %}
|
33
|
-
{% unless category=="blog" %}
|
34
|
-
<a class="categories" href="{{ site.blogPath }}categories/{{ category | slugify }}"
|
35
|
-
title="List of posts in the '{{ category }}' category"
|
36
|
-
property="articleSection" content="{{ category }}">{{ category }}</a>
|
37
|
-
<!-- <a class="categories" href="{{ site.blogPath }}category.html#{{ category }}" -->
|
38
|
-
{% endunless %}
|
39
|
-
{% endfor %}
|
40
|
-
{% for tag in post.tags %}
|
41
|
-
<a class="tags" href="{{ site.blogPath }}tags/{{ tag | slugify }}"
|
42
|
-
title="List of posts with the '{{ tag }}' tag"
|
43
|
-
property="keywords">{{ tag }}</a>
|
44
|
-
<!-- <a class="tags" href="{{ site.blogPath }}tag.html#{{ tag }}" -->
|
45
|
-
{% endfor %}
|
46
|
-
</div>
|
47
|
-
</header>
|
48
|
-
<!-- tried to find an excerpt or summary property in the schemas but no dice.
|
49
|
-
articleBody seemed wrong for an excerpt so.... -->
|
50
|
-
<span property="description">{{ post.excerpt }}</span>
|
51
|
-
</article>
|
52
|
-
{%- endfor -%}
|
53
|
-
</section>
|
54
|
-
|
55
|
-
<!--
|
56
|
-
Showing buttons to move to the next and to the previous list of posts (pager buttons).
|
57
|
-
-->
|
58
|
-
{% if paginator.total_pages > 1 -%}
|
59
|
-
<nav class="blog-pager">
|
60
|
-
<ul>
|
61
|
-
|
62
|
-
{% if paginator.previous_page -%}
|
63
|
-
{% if paginator.first_page -%}
|
64
|
-
<li class="previous">
|
65
|
-
<a href="{{ paginator.first_page_path | prepend: site.baseurl | replace: '//', '/' }}">First</a>
|
66
|
-
</li>
|
67
|
-
{%- endif %}
|
68
|
-
<li class="previous">
|
69
|
-
<a href="{{ paginator.previous_page_path | prepend: site.baseurl | replace: '//', '/' }}">← Newer Posts</a>
|
70
|
-
</li>
|
71
|
-
{%- endif %}
|
72
|
-
|
73
|
-
{% if paginator.page_trail -%}
|
74
|
-
{% for trail in paginator.page_trail -%}
|
75
|
-
{%- if page.url == trail.path %}
|
76
|
-
<li class="selected">
|
77
|
-
<a rel="self" title="{{trail.title}}">{{ trail.num }}</a>
|
78
|
-
{%- else %}
|
79
|
-
<li>
|
80
|
-
<a href="{{ trail.path | prepend: site.baseurl | replace: '//', '/' }}" title="{{trail.title}}">{{ trail.num }}</a>
|
81
|
-
{%- endif %}
|
82
|
-
</li>
|
83
|
-
{%- endfor -%}
|
84
|
-
{%- endif %}
|
85
|
-
|
86
|
-
{% if paginator.next_page -%}
|
87
|
-
<li class="next">
|
88
|
-
<a href="{{ paginator.next_page_path | prepend: site.baseurl | replace: '//', '/' }}">Older Posts →</a>
|
89
|
-
</li>
|
90
|
-
{% if paginator.last_page -%}
|
91
|
-
<li class="previous">
|
92
|
-
<a href="{{ paginator.last_page_path | prepend: site.baseurl | replace: '//', '/' }}">Last</a>
|
93
|
-
</li>
|
94
|
-
{%- endif %}
|
95
|
-
{%- endif %}
|
96
|
-
|
97
|
-
</ul>
|
98
|
-
{%- endif %}
|
99
|
-
</nav>
|
100
|
-
<p class="rss-subscribe">subscribe <a href="{{ "/feed.xml" | relative_url }}">via RSS</a></p>
|
data/_includes/blogList.html~2
DELETED
@@ -1,85 +0,0 @@
|
|
1
|
-
{%- if layout.blog-list-title -%}
|
2
|
-
{%- capture blTitle %}{{ layout.blog-list-title }}{% endcapture -%}
|
3
|
-
{%- elsif page.blog-list-title -%}
|
4
|
-
{%- capture blTitle %}{{ page.blog-list-title }}{% endcapture -%}
|
5
|
-
{%- endif -%}
|
6
|
-
<section class="blog-list">
|
7
|
-
{% if blTitle %}<h2>{{ blTitle }}</h2>{% endif -%}
|
8
|
-
<!-- This loops through the paginated posts -->
|
9
|
-
{% for post in paginator.posts -%}
|
10
|
-
<article typeof="BlogPosting">
|
11
|
-
<header><h3><a class="post-link" href="{{ post.url | relative_url }}"
|
12
|
-
property="headline" content="{{ post.title }}">{{ post.title | escape }}</a></h3>
|
13
|
-
<time property="datePublished"
|
14
|
-
content="{{ post.date | date_to_xmlschema }}"
|
15
|
-
class="post-date">{{ post.date | date: "%b %-d, %Y"}}</time>
|
16
|
-
<!-- Google requires that publisher be an Organization vs Person
|
17
|
-
(as the schema.org definition says it can be). Just saying
|
18
|
-
that the Publisher is an Organization is insufficient because
|
19
|
-
Organizations *require* a logo. This is a very stupid can of
|
20
|
-
worms that I am ignoring. Feel free to fix it for yourself,
|
21
|
-
though. That starts with the line below.
|
22
|
-
|
23
|
-
See https://webmasters.stackexchange.com/questions/110332/personal-blog-using-structured-data-fails-validation-on-publisher/110350#110350
|
24
|
-
|
25
|
-
Also, I have made that line invisible because I'm using the
|
26
|
-
site author information, and that info is visible in the footer,
|
27
|
-
so I'm not marking up lots of invisible things that Google frowns
|
28
|
-
on. If you've got a multi-author blog, then of course, you should
|
29
|
-
visibly list the authors. -->
|
30
|
-
<a property="author publisher" typeof="person"><meta property="name" content="{{ site.author }}" /></a>
|
31
|
-
{% include catag.html -%}
|
32
|
-
</header>
|
33
|
-
<!-- tried to find an excerpt or summary property in the schemas but no dice.
|
34
|
-
articleBody seemed wrong for an excerpt so.... -->
|
35
|
-
<span property="description">{{ post.excerpt }}</span>
|
36
|
-
</article>
|
37
|
-
{%- endfor -%}
|
38
|
-
</section>
|
39
|
-
|
40
|
-
<!--
|
41
|
-
Showing buttons to move to the next and to the previous list of posts (pager buttons).
|
42
|
-
-->
|
43
|
-
{% if paginator.total_pages > 1 -%}
|
44
|
-
<nav class="blog-pager">
|
45
|
-
<ul>
|
46
|
-
|
47
|
-
{% if paginator.previous_page -%}
|
48
|
-
{% if paginator.first_page -%}
|
49
|
-
<li class="previous">
|
50
|
-
<a href="{{ paginator.first_page_path | prepend: site.baseurl | replace: '//', '/' }}">First</a>
|
51
|
-
</li>
|
52
|
-
{%- endif %}
|
53
|
-
<li class="previous">
|
54
|
-
<a href="{{ paginator.previous_page_path | prepend: site.baseurl | replace: '//', '/' }}">← Newer Posts</a>
|
55
|
-
</li>
|
56
|
-
{%- endif %}
|
57
|
-
|
58
|
-
{% if paginator.page_trail -%}
|
59
|
-
{% for trail in paginator.page_trail -%}
|
60
|
-
{%- if page.url == trail.path %}
|
61
|
-
<li class="selected">
|
62
|
-
<a rel="self" title="{{trail.title}}">{{ trail.num }}</a>
|
63
|
-
{%- else %}
|
64
|
-
<li>
|
65
|
-
<a href="{{ trail.path | prepend: site.baseurl | replace: '//', '/' }}" title="{{trail.title}}">{{ trail.num }}</a>
|
66
|
-
{%- endif %}
|
67
|
-
</li>
|
68
|
-
{%- endfor -%}
|
69
|
-
{%- endif %}
|
70
|
-
|
71
|
-
{% if paginator.next_page -%}
|
72
|
-
<li class="next">
|
73
|
-
<a href="{{ paginator.next_page_path | prepend: site.baseurl | replace: '//', '/' }}">Older Posts →</a>
|
74
|
-
</li>
|
75
|
-
{% if paginator.last_page -%}
|
76
|
-
<li class="previous">
|
77
|
-
<a href="{{ paginator.last_page_path | prepend: site.baseurl | replace: '//', '/' }}">Last</a>
|
78
|
-
</li>
|
79
|
-
{%- endif %}
|
80
|
-
{%- endif %}
|
81
|
-
|
82
|
-
</ul>
|
83
|
-
{%- endif %}
|
84
|
-
</nav>
|
85
|
-
<p class="rss-subscribe">subscribe <a href="{{ "/feed.xml" | relative_url }}">via RSS</a></p>
|