fix seo and metadata, add author pages
This commit is contained in:
parent
2247ee2776
commit
e349d0417e
|
@ -1,11 +1,13 @@
|
|||
---
|
||||
title: ""
|
||||
summary: ""
|
||||
author: "Abdullah Tarawneh"
|
||||
date: ""
|
||||
tags: []
|
||||
category: "Blog"
|
||||
cover: ""
|
||||
---
|
||||
+++
|
||||
title = ""
|
||||
summary = ""
|
||||
authors = ["Abdullah Tarawneh"]
|
||||
date = ""
|
||||
tags = []
|
||||
categories = []
|
||||
[[resources]]
|
||||
name = "cover"
|
||||
src = ""
|
||||
+++
|
||||
|
||||
<p class="has-pullquote after" data-pullquote=""></p>
|
|
@ -1,9 +0,0 @@
|
|||
---
|
||||
title: ""
|
||||
summary: ""
|
||||
author: "Abdullah Tarawneh"
|
||||
date: ""
|
||||
tags: []
|
||||
category: "Code"
|
||||
cover: ""
|
||||
---
|
|
@ -1,13 +0,0 @@
|
|||
---
|
||||
title: ""
|
||||
summary: ""
|
||||
author: "Abdullah Tarawneh"
|
||||
date: ""
|
||||
start: ""
|
||||
end: ""
|
||||
at: ""
|
||||
position: ""
|
||||
tags: []
|
||||
category: "Work"
|
||||
cover: ""
|
||||
---
|
Before Width: | Height: | Size: 22 KiB After Width: | Height: | Size: 22 KiB |
8
assets/scss/layouts/taxonomy/author.scss
Normal file
8
assets/scss/layouts/taxonomy/author.scss
Normal file
|
@ -0,0 +1,8 @@
|
|||
main.author {
|
||||
.entries {
|
||||
.container {
|
||||
display: grid;
|
||||
gap: 2rem;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -19,4 +19,5 @@
|
|||
|
||||
@import "layouts/partials/h-entry.scss";
|
||||
|
||||
@import "layouts/taxonomy/category.scss";
|
||||
@import "layouts/taxonomy/category.scss";
|
||||
@import "layouts/taxonomy/author.scss";
|
|
@ -1,5 +1,6 @@
|
|||
+++
|
||||
title = "Abdullah Tarawneh"
|
||||
summary = "More commonly known as a or trwnh. Nonbinary ace (they/them)"
|
||||
[[resources]]
|
||||
name = "avatar"
|
||||
src = "avatar.png"
|
BIN
content/authors/a/avatar.png
Normal file
BIN
content/authors/a/avatar.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 22 KiB |
|
@ -1,7 +1,7 @@
|
|||
+++
|
||||
title = "Certbot DNS-01 hook for Namecheap"
|
||||
summary = "A manual authorization hook for EFF Certbot, allowing DNS-01 challenge verification with Namecheap domains. Written in Python."
|
||||
author = "Abdullah Tarawneh"
|
||||
authors = ["a"]
|
||||
date = 2019-10-30
|
||||
tags = ["namecheap", "certbot", "dns-01", "python", "letsencrypt"]
|
||||
categories = ["Code"]
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
+++
|
||||
title = "Liberapay: Add Pleroma support"
|
||||
summary = "Pleroma is compatible with the Mastodon API, but uses a different URL format. This pull request creates a Pleroma identity provider within Liberapay that takes this difference into account."
|
||||
author = "Abdullah Tarawneh"
|
||||
authors = ["Abdullah Tarawneh"]
|
||||
date = 2019-11-13
|
||||
tags = ["mastodon", "api", "pleroma", "liberapay", "contribution", "pull request", "github"]
|
||||
categories = ["Code"]
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
+++
|
||||
title = "MastoMods"
|
||||
summary = "CSS tweaks and modifications for Mastodon, a libre micro-blogging social server similar to Twitter."
|
||||
author = "Abdullah Tarawneh"
|
||||
authors = ["Abdullah Tarawneh"]
|
||||
date = 2019-02-18
|
||||
tags = ["mastomods", "mastodon", "css", "userstyles", "tweaks"]
|
||||
categories = ["Code"]
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
+++
|
||||
title = "You don't have a right to profit."
|
||||
summary = "People will go to ridiculous lengths in the name of protecting the “right” to profit. Let’s be real here. No one has a “right” to profit."
|
||||
author = "Abdullah Tarawneh"
|
||||
authors = ["Abdullah Tarawneh"]
|
||||
date = 2015-07-08
|
||||
tags = ["capitalism", "profit", "music", "music industry", "piracy", "distribution", "access"]
|
||||
categories = ["Uncategorized"]
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
title = "OBS Studio: Ctrl+E to Edit Transform"
|
||||
summary = "I added a shortcut to edit transforms on a source in OBS Studio."
|
||||
date = 2017-04-30
|
||||
author = "Abdullah Tarawneh"
|
||||
authors = ["Abdullah Tarawneh"]
|
||||
tags = ["obs", "open broadcaster software", "obs studio", "keyboard shortcut", "edit transform", "pull request", "github"]
|
||||
categories = ["Code"]
|
||||
aliases = [
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
+++
|
||||
title = "I wish personal websites were actually personal."
|
||||
summary = "When I say personal website, I do not mean a page or portfolio for potential employers or clients to hire you."
|
||||
author = "Abdullah Tarawneh"
|
||||
authors = ["a"]
|
||||
date = 2023-03-18
|
||||
tags = ["personal websites", "portfolios", "services", "branding", "marketing", "capitalism"]
|
||||
categories = ["Uncategorized"]
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
+++
|
||||
title = "PhotoBucketGrabber"
|
||||
summary = "[OBSOLETE] Download all your photos from PhotoBucket using this Python script."
|
||||
author = "Abdullah Tarawneh"
|
||||
authors = ["Abdullah Tarawneh"]
|
||||
date = 2019-03-17
|
||||
tags = ["python", "photobucket", "automation", "scripting", "archive", "export", "download"]
|
||||
categories = ["Code"]
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
+++
|
||||
title = "RIP Grooveshark."
|
||||
summary = "I last used Grooveshark earlier today. I refreshed the page and found that it was dead. [...] I find myself feeling about Grooveshark similarly as when I found out that Megaupload had been shut down, and that many of my files were lost forever."
|
||||
author = "Abdullah Tarawneh"
|
||||
authors = ["Abdullah Tarawneh"]
|
||||
date = 2015-05-01
|
||||
tags = ["grooveshark", "music", "music industry", "culture", "user generated content", "capitalism", "copyright"]
|
||||
categories = ["Uncategorized"]
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
title = "salatime"
|
||||
summary = "[OBSOLETE] Basic terminal script to print out daily prayer times for Birmingham, AL."
|
||||
date = 2019-05-09
|
||||
author = "Abdullah Tarawneh"
|
||||
authors = ["Abdullah Tarawneh"]
|
||||
tags = ["python", "web scraping", "scraping", "beautifulsoup", "salat", "prayer", "time"]
|
||||
categories = ["Code"]
|
||||
aliases = [
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
+++
|
||||
title = "Twitter is no longer a social network."
|
||||
summary = "That service that started out as a way to send status updates to your friends has been replaced by Twitter, a bloated, lumbering mess trying to force-feed you a stale diet of whatever Content™ floats to the top of the river of shit."
|
||||
author = "Abdullah Tarawneh"
|
||||
authors = ["Abdullah Tarawneh"]
|
||||
date = 2018-04-27
|
||||
tags = ["twitter", "social network", "social media", "analysis", "capitalism"]
|
||||
categories = ["Communication"]
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
+++
|
||||
title = "Director of Technology at Equality Initiative"
|
||||
summary = "3 years helping a non-profit manage all technical aspects, from website to email."
|
||||
author = "Abdullah Tarawneh"
|
||||
date = "2014-02-20"
|
||||
start = "Feb 2014"
|
||||
end = "Feb 2017"
|
||||
|
|
|
@ -2,7 +2,6 @@
|
|||
layout = "custom_html"
|
||||
title = "Go-Fed Site Redesign"
|
||||
summary = "Taking Go-Fed's website from 'yep, it has color' to 'woo, looking super nice! :D'"
|
||||
author = "Abdullah Tarawneh"
|
||||
date = "2020-12-27"
|
||||
start = "Dec 2020"
|
||||
end = "Dec 2020"
|
||||
|
|
|
@ -2,7 +2,6 @@
|
|||
layout = "custom_html"
|
||||
title = "Mastodon documentation revamp"
|
||||
summary = "Reorganizing the documentation for the Mastodon Project, while also rewriting significant portions of it."
|
||||
author = "Abdullah Tarawneh"
|
||||
date = "2020-01-04"
|
||||
start = "Aug 2019"
|
||||
end = "Jan 2020"
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
+++
|
||||
title = "Mo Tarawneh"
|
||||
summary = "A personal website for Mo Tarawneh, inaugural chairperson of the UN CRPD and twice-elected member."
|
||||
author = "Abdullah Tarawneh"
|
||||
date = "2020-03-17"
|
||||
tags = ["website", "web", "responsive", "design"]
|
||||
draft = true
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
+++
|
||||
title = "Pixelfed team member"
|
||||
summary = "After making a masterpost of bugs and issues, I turned Pixelfed from a one-person project into a team effort."
|
||||
author = "Abdullah Tarawneh"
|
||||
date = "2019-01-06"
|
||||
start = "Jan 2019"
|
||||
end = "current"
|
||||
|
|
|
@ -2,7 +2,6 @@
|
|||
layout = "custom_html"
|
||||
title = "Senior Technical Writer at Trilogy"
|
||||
summary = "Managing knowledge bases for numerous products owned by Trilogy."
|
||||
author = "Abdullah Tarawneh"
|
||||
date = "2021-05-16"
|
||||
start = "May 2021"
|
||||
end = "Dec 2021"
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
+++
|
||||
title = ""
|
||||
summary = "B.S. Biomedical Engineering<br>B.S. Computer Science<br>Minor, Mathematics<br>Science and Technology Honors Program"
|
||||
author = "Abdullah Tarawneh"
|
||||
date = "2018-12-15"
|
||||
start = ""
|
||||
end = "Fall 2018"
|
||||
|
|
|
@ -72,10 +72,12 @@ taxonomy = ["HTML", "RSS"]
|
|||
term = ["HTML", "RSS", "ATOM"]
|
||||
|
||||
[params]
|
||||
icon = "images/icon.png"
|
||||
[params.author]
|
||||
name = "Abdullah Tarawneh"
|
||||
email = "a@trwnh.com"
|
||||
|
||||
|
||||
[taxonomies]
|
||||
tag = "tags"
|
||||
category = "categories"
|
||||
|
|
|
@ -1,5 +1,7 @@
|
|||
{{- $cover := ($.Resources.ByType "image").GetMatch "{*cover*,*thumbnail*,*featured*}" -}}
|
||||
{{ $icon := resources.GetMatch (default "" .Site.Params.icon) -}}
|
||||
{{- $staticIcon := "icon.png" | absURL -}}
|
||||
{{- $author := index ($.GetTerms "authors") 0 -}}
|
||||
|
||||
{{/*=== title ===*/}}
|
||||
{{ "<!-- text -->" | safeHTML }}
|
||||
|
@ -30,7 +32,6 @@
|
|||
{{- end -}}
|
||||
|
||||
{{/*=== image ===*/}}
|
||||
{{- $staticIcon := "icon.png" | absURL -}}
|
||||
{{- with or $cover $icon }}
|
||||
{{ "<!-- image -->" | safeHTML }}
|
||||
<meta property="og:image" itemprop="image" content="{{ .Permalink | absURL }}" />
|
||||
|
@ -54,50 +55,56 @@
|
|||
{{- with .Params.locale }}<meta property="og:locale" content="{{ . }}" />{{ end }}
|
||||
{{- with .Params.videos }}{{- range . }}
|
||||
<meta property="og:video" content="{{ . | absURL }}" />
|
||||
{{ end }}{{ end }}
|
||||
|
||||
{{/*=== article ===*/}}
|
||||
{{ with or .Params.author .Site.Params.author -}}
|
||||
{{ "<!-- author -->" | safeHTML }}
|
||||
<meta name="author" property="article:author" content="{{ . }}" />
|
||||
{{- end }}
|
||||
<meta property="article:publisher" content="{{ .Site.BaseURL }}" />
|
||||
{{ "<!-- time -->" | safeHTML }}
|
||||
{{ with .Date -}}
|
||||
<meta property="article:published_time" itemprop="datePublished" content={{ .Format "2006-01-02T03:04:05Z" | safeHTML }} />
|
||||
{{ end -}}
|
||||
{{ with .Lastmod -}}
|
||||
<meta property="article:modified_time" itemprop="dateModified" content={{ .Format "2006-01-02T03:04:05Z" | safeHTML }} />
|
||||
{{ end -}}
|
||||
{{ end }}{{ end -}}
|
||||
|
||||
{{/*=== section and keywords ===*/}}
|
||||
{{- "<!-- keywords -->" | safeHTML }}
|
||||
{{ with.Params.category -}}
|
||||
{{ "<!-- keywords -->" | safeHTML }}
|
||||
{{- with .Params.categories }}
|
||||
{{- range . }}
|
||||
<meta property="article:section" content="{{ . }}" />
|
||||
{{- end }}
|
||||
{{- end -}}
|
||||
{{- with .Params.tags }}
|
||||
<meta property="article:tag" itemprop="keywords" name="keywords" content='{{ delimit . " "}}' />
|
||||
{{- end -}}
|
||||
|
||||
{{- if isset .Params "date" }}
|
||||
{{ if .Date }}
|
||||
{{ "<!-- article metadata -->" | safeHTML }}
|
||||
<meta property="og:type" content="article" />
|
||||
{{ with $author -}}
|
||||
<meta name="author" property="article:author" content="{{ .Title }}" />
|
||||
{{- end }}
|
||||
<meta property="article:publisher" content="{{ .Site.BaseURL }}" />
|
||||
{{ with .Date -}}
|
||||
<meta property="article:published_time" itemprop="datePublished" content={{ .Format "2006-01-02T15:04:05Z" | safeHTML }} />
|
||||
{{ end -}}
|
||||
{{ with .Lastmod -}}
|
||||
<meta property="article:modified_time" itemprop="dateModified" content={{ .Format "2006-01-02T15:04:05Z" | safeHTML }} />
|
||||
{{ end -}}
|
||||
<meta itemprop="wordCount" content="{{ .WordCount }}" />
|
||||
<script defer type="application/ld+json">
|
||||
{
|
||||
"@context": "http://schema.org",
|
||||
"@type": "Article",
|
||||
"headline": {{ .Title }},
|
||||
{{- with $author }}
|
||||
"author": {
|
||||
"@type": "Person",
|
||||
"name": {{ or .Params.author .Site.Params.author }},
|
||||
"url": {{ .Site.BaseURL }}
|
||||
"name": {{ .Title }},
|
||||
"url": {{ .Permalink }},
|
||||
{{- with .Resources.GetMatch "avatar" }}
|
||||
"image": {
|
||||
"@type": "ImageObject",
|
||||
"url": {{ .Permalink }}
|
||||
}
|
||||
{{- end }}
|
||||
},
|
||||
"datePublished": {{ .Date.UTC.Format "2006-01-02T03:04:05Z" }},
|
||||
{{- end }}
|
||||
"datePublished": {{ .Date.UTC.Format "2006-01-02T15:04:05Z" }},
|
||||
"description": {{ (or .Description .Summary) | plainify }},
|
||||
"wordCount": {{ .WordCount }},
|
||||
"mainEntityOfPage": {{.Permalink}},
|
||||
"dateModified": "{{ .Lastmod.UTC.Format "2006-01-02T03:04:05Z" }}",
|
||||
"dateModified": "{{ .Lastmod.UTC.Format "2006-01-02T15:04:05Z" }}",
|
||||
"image": {
|
||||
"@type": "ImageObject",
|
||||
"url": {{ with or $cover $icon }}{{ .Permalink | absURL }}{{ end }}
|
||||
|
@ -116,6 +123,7 @@
|
|||
{{- else }}
|
||||
{{ "<!-- webpage metadata -->" | safeHTML }}
|
||||
<meta property="og:type" content="website" />
|
||||
<meta name="author" content="{{ .Site.Params.author.name }}" />
|
||||
<script defer type="application/ld+json">
|
||||
{
|
||||
"@context": "http://schema.org",
|
||||
|
@ -133,10 +141,10 @@
|
|||
|
||||
{{/* auxiliary info */}}
|
||||
{{ "<!-- site presentation -->" | safeHTML }}
|
||||
{{ with $icon }}
|
||||
{{- with $icon }}
|
||||
<link rel="shortcut icon" href='{{ .Permalink }}' sizes="{{.Width}}x{{.Height}}" />
|
||||
{{- else -}}
|
||||
<link rel="shortcut icon" href='{{ $staticIcon }}' sizes="512x512" />
|
||||
<link rel="shortcut icon" href='{{ $staticIcon }}' />
|
||||
{{- end }}
|
||||
<meta name="theme-color" content="#ffffff" />
|
||||
<meta name="msapplication-TileColor" content="#ffffff" />
|
||||
|
@ -146,6 +154,6 @@
|
|||
{{- end -}}
|
||||
|
||||
{{/* robots */}}
|
||||
{{ "<!-- robots -->" | safeHTML }}
|
||||
{{- "<!-- robots -->" | safeHTML }}
|
||||
<meta name="robots" content="index,follow" />
|
||||
<meta name="googlebot" content="index,follow" />
|
30
layouts/taxonomy/author.html
Normal file
30
layouts/taxonomy/author.html
Normal file
|
@ -0,0 +1,30 @@
|
|||
{{ define "main" }}
|
||||
<main class="author">
|
||||
<header class="section h-card">
|
||||
<div class="container">
|
||||
<h1 class="p-name">{{.Title}}</h1>
|
||||
<p class="p-note">{{ .Summary }}</p>
|
||||
{{ with .Resources.GetMatch "avatar" }}
|
||||
<img src="{{ .Permalink }}" alt="{{ .Title }}" width="120" height="120">
|
||||
{{ end }}
|
||||
<p>h-feed URL: <a class="u-url u-uid" rel="self" href="{{ .Permalink }}">{{.Permalink}}</a></p>
|
||||
{{ with .OutputFormats.Get "rss" -}}
|
||||
<p>
|
||||
<a href="{{ .Permalink}}" rel="{{ .Rel }}" type="{{ .MediaType.Type }}">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 16 16"><title>vaadin:rss-square</title><path fill="currentColor" d="M0 0v16h16V0zm3.6 14c-.9 0-1.6-.7-1.6-1.6s.7-1.6 1.6-1.6s1.6.7 1.6 1.6S4.6 14 3.6 14m4 0c0-3.1-2.5-5.6-5.6-5.6V6c4.4 0 8 3.6 8 8zm4 0c0-5.3-4.3-9.6-9.6-9.6V2c6.6 0 12 5.4 12 12z"/></svg>
|
||||
<span>RSS Feed</span>
|
||||
</a>
|
||||
</p>
|
||||
{{ end }}
|
||||
</div>
|
||||
</header>
|
||||
<section class="section entries h-feed">
|
||||
<div class="container">
|
||||
<h2>Posts written by {{ .Title }}</h2>
|
||||
{{ range .Data.Pages }}
|
||||
{{ partial "list/h-entry.summary.html" . }}
|
||||
{{ end }}
|
||||
</div>
|
||||
</section>
|
||||
</main>
|
||||
{{ end }}
|
Loading…
Reference in a new issue