2
0
mirror of https://github.com/offen/website.git synced 2024-10-18 20:20:24 +02:00

Merge pull request #22 from offen/feed

Add feed page for blog content
This commit is contained in:
Frederik Ring 2019-12-20 20:54:48 +01:00 committed by GitHub
commit 6c1f4d227e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
16 changed files with 93 additions and 102 deletions

View File

@ -1,7 +1,7 @@
Title: Laying the foundation for fair web analytics | Offen title: Laying the foundation for fair web analytics | Offen
description: Our milestone 1 achievements include extensible architecture, a localization option and an improved server structure. description: Our milestone 1 achievements include extensible architecture, a localization option and an improved server structure.
save_as: blog/laying-foundation-for-fair-web-analytics/index.html date: 2019-12-12
href: /blog/laying-foundation-for-fair-web-analytics/ slug: laying-foundation-for-fair-web-analytics
sitemap_priority: 0.7 sitemap_priority: 0.7
sm_image_url: /theme/images/offen-blog-0010-milestone1.jpg sm_image_url: /theme/images/offen-blog-0010-milestone1.jpg

View File

@ -1,10 +1,8 @@
Title: Page not found | Offen title: Page not found | Offen
description: This link isnt working. description: This link isnt working.
save_as: 404.html save_as: 404.html
href: /404.html
no_stats: true no_stats: true
exclude_from_sitemap: true exclude_from_sitemap: true
sm_image_url: /theme/images/offen-logo-social-media.jpg
![Page not Found](/theme/images/content-404.webp){:class="image-text-600-338"} ![Page not Found](/theme/images/content-404.webp){:class="image-text-600-338"}

View File

@ -1,8 +1,6 @@
Title: About | Offen title: About | Offen
description: Who we are, who supports us and how you can can get in touch. description: Who we are, who supports us and how you can can get in touch.
save_as: about/index.html slug: about
href: /about/
sm_image_url: /theme/images/offen-logo-social-media.jpg
## About ## About

View File

@ -1,18 +0,0 @@
Title: Fair analytics blog | Offen
description: Developing Offen. A free and open source analytics software for websites and web applications that allows respectful handling of data.
save_as: blog/index.html
href: /blog/
exclude_from_sitemap: true
sm_image_url: /theme/images/offen-logo-social-media.jpg
## Fair analytics blog
### Developing Offen. A free and open source analytics software for websites and web applications that allows respectful handling of data.
---
12 Dec 2019
[![Milestone 1 - Laying the foundation for fair web analytics](/theme/images/offen-blog-0010-milestone1.jpg){:class="image-text-600-322"}](/blog/laying-foundation-for-fair-web-analytics/)
## [Episode One — Laying the foundation for fair web analytics](/blog/laying-foundation-for-fair-web-analytics/)

View File

@ -1,9 +1,7 @@
Title: Deep dive | Offen title: Deep dive | Offen
description: What do users know about their data? How can they access it? Do operators benefit from a careful handling of user data? Does Offen work in accordance with GDPR? description: What do users know about their data? How can they access it? Do operators benefit from a careful handling of user data? Does Offen work in accordance with GDPR?
save_as: deep-dive/index.html slug: deep-dive
href: /deep-dive/
sitemap_priority: 0.7 sitemap_priority: 0.7
sm_image_url: /theme/images/offen-logo-social-media.jpg
## Deep dive ## Deep dive

View File

@ -1,10 +1,8 @@
Title: Transparent web analytics for everyone | Offen title: Transparent web analytics for everyone | Offen
description: Offen is a free and open source analytics software for websites and web applications. Users can access their data while the operators treat it with respect. description: Offen is a free and open source analytics software for websites and web applications. Users can access their data while the operators treat it with respect.
save_as: index.html save_as: index.html
href: /
template: index template: index
sitemap_priority: 1.0 sitemap_priority: 1.0
sm_image_url: /theme/images/offen-logo-social-media.jpg
## Summary ## Summary

View File

@ -1,9 +1,7 @@
Title: Legal Notice | Offen title: Legal Notice | Offen
description: Information in accordance with Section 5 TMG description: Information in accordance with Section 5 TMG
save_as: legal-notice/index.html slug: legal-notice
href: /legal-notice/
exclude_from_sitemap: true exclude_from_sitemap: true
sm_image_url: /theme/images/offen-logo-social-media.jpg
## Legal Notice ## Legal Notice

View File

@ -1,30 +0,0 @@
Title: Opt-out | Offen
description: Prevent Offen from aggregating the actions you have taken on participating websites.
save_as: opt-out/index.html
exclude_from_sitemap: true
sm_image_url: /theme/images/offen-logo-social-media.jpg
## You are opted out
This will prevent Offen from aggregating the actions you have taken on participating websites.
Operators now cannot draw any conclusions from your actions via Offen. At the same time, however, they *cannot create a better experience* for you and other users.
<script>
var vault = document.createElement('iframe')
vault.style.display = 'none'
vault.setAttribute('width', '0')
vault.setAttribute('height', '0')
vault.setAttribute('frameBorder', '0')
vault.setAttribute('scrolling', 'no')
vault.addEventListener('load', function (e) {
vault.contentWindow.postMessage({
type: 'OPTOUT',
payload: {
status: true
}
}, '*')
})
vault.src = 'https://vault-alpha.offen.dev'
document.body.append(vault)
</script>

View File

@ -28,15 +28,20 @@ THEME = './theme'
# Delete the output directory before generating new files. # Delete the output directory before generating new files.
DELETE_OUTPUT_DIRECTORY = True DELETE_OUTPUT_DIRECTORY = True
# dont create following standard pages DIRECT_TEMPLATES = ['sitemap', 'archives']
AUTHORS_SAVE_AS = None
ARCHIVES_SAVE_AS = None
CATEGORIES_SAVE_AS = None
TAGS_SAVE_AS = None
# keep this for access to page variable # dont create following standard pages
DIRECT_TEMPLATES = ['sitemap'] AUTHOR_SAVE_AS = ''
AUTHORS_SAVE_AS = ''
CATEGORY_SAVE_AS = ''
CATEGORIES_SAVE_AS = ''
TAG_SAVE_AS = ''
TAGS_SAVE_AS = ''
ARCHIVES_SAVE_AS = 'blog/index.html'
SITEMAP_SAVE_AS = 'sitemap.xml' SITEMAP_SAVE_AS = 'sitemap.xml'
PAGE_SAVE_AS = '{slug}/index.html'
ARTICLE_SAVE_AS = 'blog/{slug}/index.html'
PLUGIN_PATHS = ['./plugins'] PLUGIN_PATHS = ['./plugins']
PLUGINS = ['decorate_content', 'assets'] PLUGINS = ['decorate_content', 'assets']
@ -54,5 +59,3 @@ LINKEDIN_URL = 'https://www.linkedin.com/company/hioffen'
TWITTER_URL = 'https://twitter.com/hioffen' TWITTER_URL = 'https://twitter.com/hioffen'
OFFEN_ACCOUNT_ID = '9b63c4d8-65c0-438c-9d30-cc4b01173393' OFFEN_ACCOUNT_ID = '9b63c4d8-65c0-438c-9d30-cc4b01173393'
STATUS_URL = '/blog/laying-foundation-for-fair-web-analytics'

View File

@ -11,7 +11,6 @@ SITEURL = os.environ.get('SITEURL', 'https://www.offen.dev')
# RELATIVE_URLS = True # RELATIVE_URLS = True
FEED_ALL_ATOM = 'feeds/all.atom.xml' FEED_ALL_ATOM = 'feeds/all.atom.xml'
CATEGORY_FEED_ATOM = 'feeds/{slug}.atom.xml'
DELETE_OUTPUT_DIRECTORY = True DELETE_OUTPUT_DIRECTORY = True

View File

@ -0,0 +1,20 @@
{% extends "base.html" %}
{% set title = 'Feed' %}
{% set description = 'Description' %}
{% set href = 'blog/' %}
{% set no_stats = False %}
{% set template = 'archives' %}
{% block content %}
{% for article in articles %}
{% if loop.index != 1 %}
<hr>
{% endif %}
<div class="content">
<div class="container-reader">
{{ article.content }}
</div>
</div>
{% endfor %}
{% endblock %}

View File

@ -0,0 +1,9 @@
{% extends "base.html" %}
{% set title = article.title %}
{% set description = article.description %}
{% set href = article.save_as.replace('index.html', '') %}
{% set sm_image_url = article.sm_image_url %}
{% set no_stats = article.no_stats %}
{% set template = article.template %}
{% set content = article.content %}

View File

@ -1,32 +1,34 @@
<!DOCTYPE html> <!DOCTYPE html>
<html lang="en"> <html lang="en">
{% block head %}
<head> <head>
<title> <title>
{% block title %}{{ page.title }}{% endblock %} {% block title %}{{ title }}{% endblock %}
</title> </title>
<meta charset="UTF-8"> <meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1"> <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<meta name="description" content="{{ page.description }}"> <meta name="description" content="{{ description }}">
<meta property="og:site_name" content="{{ SITENAME }}"> <meta property="og:site_name" content="{{ SITENAME }}">
<meta property="og:locale" content="{{ DEFAULT_LANG }}"> <meta property="og:locale" content="{{ DEFAULT_LANG }}">
<meta property="og:title" content="{{ page.title }}"> <meta property="og:title" content="{{ title }}">
<meta property="og:description" content="{{ page.description }}"> <meta property="og:description" content="{{ description }}">
<meta property="og:type" content="website"> <meta property="og:type" content="website">
<meta property="og:url" content="{{ SITEURL }}{{ page.href or page.url or page.save_as }}"> <meta property="og:url" content="{{ SITEURL }}/{{ href }}">
<meta property="og:image" content="{{ SITEURL }}{{ page.sm_image_url }}"> <meta property="og:image" content="{{ SITEURL }}{{ sm_image_url or '/theme/images/offen-logo-social-media.jpg' }}">
<meta name="twitter:image:alt" content="Offen logo"> <meta name="twitter:image:alt" content="Offen logo">
<meta name="twitter:card" content="summary_large_image"> <meta name="twitter:card" content="summary_large_image">
<link rel="canonical" href="{{ SITEURL }}{{ page.href or page.url or page.save_as }}"> <link rel="canonical" href="{{ SITEURL }}/{{ href }}">
<link rel="shortcut icon" type="image/x-icon" href="/theme/images/favicon.ico"> <link rel="shortcut icon" type="image/x-icon" href="/theme/images/favicon.ico">
{% assets filters="libsass,postcss,cssmin", output="css/style.min.css", "css/normalize.css", "css/fonts.css", "css/style.scss" %} {% assets filters="libsass,postcss,cssmin", output="css/style.min.css", "css/normalize.css", "css/fonts.css", "css/style.scss" %}
<link rel="stylesheet" href="/{{ ASSET_URL }}"> <link rel="stylesheet" href="/{{ ASSET_URL }}">
{% endassets %} {% endassets %}
{% if OFFEN_ACCOUNT_ID and not page.no_stats %} {% if OFFEN_ACCOUNT_ID and not no_stats %}
<script async src="/script.js" data-account-id="{{ OFFEN_ACCOUNT_ID }}"></script> <script async src="/script.js" data-account-id="{{ OFFEN_ACCOUNT_ID }}"></script>
{% endif %} {% endif %}
</head> </head>
<body class="{{page.template}}"> {% endblock %}
<body class="{{ template }}">
<div class="menu"> <div class="menu">
<section class="nav-bar"> <section class="nav-bar">
<div class="nav-container"> <div class="nav-container">
@ -43,16 +45,16 @@
<a href="/deep-dive/">Deep dive</a> <a href="/deep-dive/">Deep dive</a>
</li> </li>
<li> <li>
<a href="{{ STATUS_URL }}">Status</a> <a href="/blog/">Status</a>
</li> </li>
<li> <li>
<a href="/about/">About</a> <a href="/about/">About</a>
</li> </li>
<li> <li>
<a href="{{GITHUB_ORG}}" rel="noopener" target="_blank">GitHub</a> <a href="{{ GITHUB_ORG }}" rel="noopener" target="_blank">GitHub</a>
</li> </li>
<li> <li>
<a href="{{PATREON_URL}}" rel="noopener" target="_blank">Patreon</a> <a href="{{ PATREON_URL }}" rel="noopener" target="_blank">Patreon</a>
</li> </li>
</ul> </ul>
</nav> </nav>
@ -63,7 +65,7 @@
{% block content %} {% block content %}
<div class="content"> <div class="content">
<div class="container-reader"> <div class="container-reader">
{{ page.content }} {{ content }}
</div> </div>
</div> </div>
{% endblock %} {% endblock %}
@ -92,7 +94,7 @@
Offen is still in alpha. Discover what is already up and running and where we want to go in the coming months. Offen is still in alpha. Discover what is already up and running and where we want to go in the coming months.
</p> </p>
<div class="btn-wrapper"> <div class="btn-wrapper">
<a class="btn btn-color-black" href="{{ STATUS_URL }}">Project status</a> <a class="btn btn-color-black" href="/blog/">Project status</a>
</div> </div>
</div> </div>
<div class="card"> <div class="card">
@ -103,7 +105,7 @@
We're working hard to ensure that Offen is independent, cutting-edge and can be sustained for years to come. We're working hard to ensure that Offen is independent, cutting-edge and can be sustained for years to come.
</p> </p>
<div class="btn-wrapper"> <div class="btn-wrapper">
<a class="btn btn-color-black" href="{{PATREON_URL}}" rel="noopener" target="_blank">Support us</a> <a class="btn btn-color-black" href="{{ PATREON_URL }}" rel="noopener" target="_blank">Support us</a>
</div> </div>
</div> </div>
</div> </div>
@ -121,22 +123,22 @@
</div> </div>
<div class="footer-card"> <div class="footer-card">
<p> <p>
<a href="mailto:{{CONTACT_EMAIL}}">{{CONTACT_EMAIL}}</a> <a href="mailto:{{ CONTACT_EMAIL }}">{{CONTACT_EMAIL}}</a>
<a target="_blank" href="/theme/{{GPG_KEY_FILE}}">[GPG Key]</a> <a target="_blank" href="/theme/{{ GPG_KEY_FILE }}">[GPG Key]</a>
</p> </p>
<p> <p>
<a href="{{GITHUB_ORG}}" rel="noopener" target="_blank">GitHub</a> <a href="{{ GITHUB_ORG }}" rel="noopener" target="_blank">GitHub</a>
</p> </p>
<p> <p>
<a href="{{PATREON_URL}}" rel="noopener" target="_blank">Patreon</a> <a href="{{ PATREON_URL }}" rel="noopener" target="_blank">Patreon</a>
</p> </p>
</div> </div>
<div class="footer-card"> <div class="footer-card">
<p> <p>
<a href="{{LINKEDIN_URL}}" rel="noopener" target="_blank">LinkedIn</a> <a href="{{ LINKEDIN_URL }}" rel="noopener" target="_blank">LinkedIn</a>
</p> </p>
<p> <p>
<a href="{{TWITTER_URL}}" rel="noopener" target="_blank">Twitter</a> <a href="{{ TWITTER_URL }}" rel="noopener" target="_blank">Twitter</a>
</p> </p>
<p> <p>
<a href="/legal-notice/">Legal Notice</a> <a href="/legal-notice/">Legal Notice</a>

View File

@ -67,7 +67,7 @@
Offen is still in alpha. Discover what is already up and running and where we want to go in the coming months. Offen is still in alpha. Discover what is already up and running and where we want to go in the coming months.
</p> </p>
<div class="btn-wrapper"> <div class="btn-wrapper">
<a class="btn btn-color-white" href="{{ STATUS_URL }}">Project status</a> <a class="btn btn-color-white" href="/blog/">Project status</a>
</div> </div>
</div> </div>
</div> </div>

View File

@ -1 +1,9 @@
{% extends "base.html" %} {% extends "base.html" %}
{% set title = page.title %}
{% set description = page.description %}
{% set href = page.save_as.replace('index.html', '') %}
{% set sm_image_url = page.sm_image_url %}
{% set no_stats = page.no_stats %}
{% set template = page.template %}
{% set content = page.content %}

View File

@ -3,9 +3,17 @@
{% for page in pages %} {% for page in pages %}
{% if not page.exclude_from_sitemap %} {% if not page.exclude_from_sitemap %}
<url> <url>
<loc>{{ SITEURL }}{{ page.href }}</loc> <loc>{{ SITEURL }}/{{ page.save_as | replace('index.html', '') }}</loc>
<priority>{{ page.sitemap_priority or 0.5 }}</priority> <priority>{{ page.sitemap_priority or 0.5 }}</priority>
</url> </url>
{% endif %} {% endif %}
{% endfor %} {% endfor %}
{% for article in articles %}
{% if not article.exclude_from_sitemap %}
<url>
<loc>{{ SITEURL }}/{{ article.save_as | replace('index.html', '') }}</loc>
<priority>{{ article.sitemap_priority or 0.5 }}</priority>
</url>
{% endif %}
{% endfor %}
</urlset> </urlset>