feat: add structured data schemas, og tags, share button, and configurable site url

This commit is contained in:
2026-05-23 01:21:55 +00:00
parent 8eea7cc0c9
commit 77ad93a4bb
35 changed files with 437 additions and 62 deletions
+3 -2
View File
@@ -6,7 +6,7 @@ from devplacepy.database import get_table, load_comments, get_vote_counts, resol
from devplacepy.attachments import get_attachments, delete_target_attachments
from devplacepy.templating import templates
from devplacepy.utils import generate_uid, get_current_user, require_user, time_ago, make_combined_slug, create_mention_notifications
from devplacepy.seo import base_seo_context, site_url, website_schema, breadcrumb_schema, combine
from devplacepy.seo import base_seo_context, site_url, website_schema, breadcrumb_schema, combine, software_source_code_schema
logger = logging.getLogger(__name__)
router = APIRouter()
@@ -103,12 +103,13 @@ async def gist_detail(request: Request, gist_slug: str):
request,
title=gist.get("title", "Gist"),
description=gist.get("description", "")[:160],
og_type="article",
breadcrumbs=[
{"name": "Home", "url": "/feed"},
{"name": "Gists", "url": "/gists"},
{"name": gist.get("title", "Gist"), "url": f"/gists/{gist['slug'] or gist['uid']}"},
],
schemas=[website_schema(base)],
schemas=[website_schema(base), software_source_code_schema(gist, base)],
)
return templates.TemplateResponse(request, "gist_detail.html", {
**seo_ctx,