Skip to content

Commit

Permalink
feat(docs): implement i18n meta tag
Browse files Browse the repository at this point in the history
  • Loading branch information
sansx committed Nov 17, 2024
1 parent 53a6040 commit e26c0de
Show file tree
Hide file tree
Showing 2 changed files with 27 additions and 8 deletions.
30 changes: 22 additions & 8 deletions apps/docs/.vitepress/config.mts
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ import { packagesLinksGenerator } from './packages';
import { platformLinksGenerator } from './platform';

import { zh } from "./zh/config";

import { metaObject as zhMetaObject } from "./zh/meta";
const { packagesNavItem, packagesSidebar } = packagesLinksGenerator();
const { platformNavItem, platformSidebar } = platformLinksGenerator();

Expand Down Expand Up @@ -145,13 +145,27 @@ export default defineConfig({

const addOg = (prop: string, content: string) => addMeta(`og:${prop}`, content);

addOg('title', isHome ? siteTitle : `${title} | ${siteTitle}`);
addOg('site_name', 'Telegram Mini Apps Platform Documentation');
addOg('image', `${siteBase}thumbnail-1200x630.6b8f54aa217a6baed4703ad5af866677.png`);
addOg('image:width', '1200');
addOg('image:height', '630');
addOg('image:type', 'image/png');
addOg('locale', lang.replace(/-/, '_'));
const i18nMeta = {
zh: zhMetaObject,
};

let baseMeta = {
site_name: 'Telegram Mini Apps Platform Documentation',
image: `${siteBase}thumbnail-1200x630.6b8f54aa217a6baed4703ad5af866677.png`,
'image:width': '1200',
'image:height': '630',
'image:type': 'image/png',
locale: lang.replace(/-/, '_'),
// for i18n
'locale:alternate': 'zh_CN',
};

const currentI18nMeta = Object.entries(i18nMeta).find(([key, _]) => filePath?.startsWith(`${key}/`))?.[1];

const i18nSiteTitle = currentI18nMeta?.title ?? siteTitle;
baseMeta = { ...baseMeta, ...currentI18nMeta, title: isHome ? i18nSiteTitle : `${title} | ${i18nSiteTitle}` } as typeof baseMeta;

Object.entries(baseMeta).forEach(([key, value]) => addOg(key, value));

// To make it correctly display in Telegram.
addMeta('twitter:card', 'summary_large_image');
Expand Down
5 changes: 5 additions & 0 deletions apps/docs/.vitepress/zh/meta.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
export const metaObject = {
site_name: "Telegram 小程序平台文档",
title: "Telegram 小程序"
};

0 comments on commit e26c0de

Please sign in to comment.