forked from forks/microblog.pub
Make site_name optional of OG metadata
This commit is contained in:
parent
3b74ecff29
commit
b557035eac
2 changed files with 6 additions and 4 deletions
|
@ -285,7 +285,9 @@
|
||||||
</div>
|
</div>
|
||||||
<div>
|
<div>
|
||||||
<a href="{{ og_meta.url }}">{{ og_meta.title }}</a>
|
<a href="{{ og_meta.url }}">{{ og_meta.title }}</a>
|
||||||
|
{% if og_meta.site_name %}
|
||||||
<small style="display:block;">{{ og_meta.site_name }}</small>
|
<small style="display:block;">{{ og_meta.site_name }}</small>
|
||||||
|
{% endif %}
|
||||||
</div>
|
</div>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -17,7 +17,7 @@ class OpenGraphMeta(BaseModel):
|
||||||
title: str
|
title: str
|
||||||
image: str
|
image: str
|
||||||
description: str
|
description: str
|
||||||
site_name: str
|
site_name: str | None = None
|
||||||
|
|
||||||
|
|
||||||
def _scrap_og_meta(html: str) -> OpenGraphMeta | None:
|
def _scrap_og_meta(html: str) -> OpenGraphMeta | None:
|
||||||
|
@ -29,10 +29,10 @@ def _scrap_og_meta(html: str) -> OpenGraphMeta | None:
|
||||||
raw = {}
|
raw = {}
|
||||||
for field in OpenGraphMeta.__fields__.keys():
|
for field in OpenGraphMeta.__fields__.keys():
|
||||||
og_field = f"og:{field}"
|
og_field = f"og:{field}"
|
||||||
if not ogs.get(og_field):
|
if not ogs.get(og_field) and field != "site_name":
|
||||||
return None
|
return None
|
||||||
|
|
||||||
raw[field] = ogs[og_field]
|
raw[field] = ogs.get(og_field, None)
|
||||||
|
|
||||||
return OpenGraphMeta.parse_obj(raw)
|
return OpenGraphMeta.parse_obj(raw)
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue