feat(*): refactor metadata handling; move metadata to backend where possible, refine client views
This commit is contained in:
parent
929bc9f9f8
commit
9687509e4a
35 changed files with 506 additions and 339 deletions
|
@ -1,11 +1,13 @@
|
|||
import feeds from "./feeds.js"
|
||||
import general from "./general.js";
|
||||
import media from "./media.js";
|
||||
import metadata from "./metadata.js";
|
||||
import navigation from "./navigation.js";
|
||||
|
||||
export default {
|
||||
...feeds,
|
||||
...general,
|
||||
...media,
|
||||
...metadata,
|
||||
...navigation,
|
||||
};
|
||||
|
|
19
config/filters/metadata.js
Normal file
19
config/filters/metadata.js
Normal file
|
@ -0,0 +1,19 @@
|
|||
export default {
|
||||
getMetadata: (data = {}, globals = {}, page = {}, title = "", description = "", schema = "") => {
|
||||
const metadata = data?.metadata;
|
||||
const baseUrl = globals.url || ""
|
||||
const ogPath = "/og/w800";
|
||||
const image = metadata?.open_graph_image || globals.metadata?.open_graph_image || globals.avatar;
|
||||
const rawTitle = title || page.title || metadata?.title || globals.site_name;
|
||||
const resolvedTitle = `${rawTitle} • ${globals.site_name}`;
|
||||
const resolvedDescription = description || metadata?.description || page.description || globals.site_description;
|
||||
const url = metadata?.url || (page.url ? `${baseUrl}${page.url}` : "#");
|
||||
|
||||
return {
|
||||
title: resolvedTitle,
|
||||
description: resolvedDescription,
|
||||
url,
|
||||
open_graph_image: `${baseUrl}${ogPath}${image}`
|
||||
};
|
||||
}
|
||||
};
|
Loading…
Add table
Add a link
Reference in a new issue