Index

joshstock.in / b98dfd5

Source for serving and static templating/compiling of https://joshstock.in.

Latest Commit

{#}TimeHashSubjectAuthor#(+)(-)GPG?
18116 Mar 2023 10:5235436cdUse absolute URLs for metadata imagesJosh Stockin122G

Blob @ joshstock.in / site / generators / head / meta.py

application/x-python1847 bytesdownload raw
1from .._variables import verify
2import htmlgenerator as hg
3
4
5def run(data):
6 """Build HTML meta tags and insert tracking script"""
7
8 verify(data, ["title", "description", "thumbnail", "link"])
9
10 contents = [
11 hg.META(http_equiv="content-type", content="text/html; charset=utf-8"),
12 hg.META(name="format-detection", content="telephone=no,date=no,address=no,email=no,url=no"),
13 hg.TITLE(f"{data.title} - Josh Stockin"),
14 hg.META(name="title", content=f"{data.title} - Josh Stockin"),
15 hg.META(name="description", content=data.description),
16
17 # OG tags
18 hg.META(property="og:site_name", content="Josh Stockin"),
19 hg.META(property="og:title", content=f"{data.title} - Josh Stockin"),
20 hg.META(property="og:description", content=data.description),
21 hg.META(property="og:type", content="website"),
22 hg.META(
23 property="og:image",
24 content=data.thumbnail if not data.thumbnail.startswith("/") else f"https://joshstock.in{data.thumbnail}"
25 if data.thumbnail != ""
26 else "https://joshstock.in/static/images/river.jpg",
27 ),
28 hg.META(property="og:url", content=f"https://joshstock.in{data.link}"),
29
30 # Twitter card
31 hg.META(name="twitter:card", content="summary_large_image"),
32 hg.META(name="twitter:creator", content="@JoshStockin"),
33 hg.META(name="twitter:title", content=f"{data.title} - Josh Stockin"),
34 hg.META(name="twitter:description", content=data.description),
35 hg.META(
36 name="twitter:image",
37 content=data.thumbnail if not data.thumbnail.startswith("/") else f"https://joshstock.in{data.thumbnail}"
38 if data.thumbnail != ""
39 else "https://joshstock.in/static/images/river.jpg",
40 ),
41 ]
42
43 return contents
44