add PageMeta component and i18n keys for page titles
This commit is contained in:
parent
b50c1854d6
commit
1a21828815
3 changed files with 98 additions and 2 deletions
|
|
@ -116,5 +116,34 @@
|
|||
"auth_register_errors_emailInvalid": "Please enter a valid email address",
|
||||
"auth_register_errors_emailTaken": "Email is already registered",
|
||||
"auth_register_errors_passwordMin": "Password must be at least 8 characters",
|
||||
"auth_register_errors_passwordMismatch": "Passwords don't match"
|
||||
"auth_register_errors_passwordMismatch": "Passwords don't match",
|
||||
|
||||
"page_title_home": "granblue.team",
|
||||
"page_title_about": "About / granblue.team",
|
||||
"page_title_teams": "Discover teams / granblue.team",
|
||||
"page_title_collection": "Collection / granblue.team",
|
||||
"page_title_new": "Create a new team / granblue.team",
|
||||
"page_title_profile": "{username}'s Teams / granblue.team",
|
||||
"page_title_party": "{emoji} {teamName} by {username} / granblue.team",
|
||||
"page_title_saved": "Your saved teams / granblue.team",
|
||||
"page_title_login": "Login / granblue.team",
|
||||
"page_title_register": "Register / granblue.team",
|
||||
"page_title_settings": "Settings / granblue.team",
|
||||
"page_title_database": "Database / granblue.team",
|
||||
"page_title_db_characters": "Characters / Database / granblue.team",
|
||||
"page_title_db_weapons": "Weapons / Database / granblue.team",
|
||||
"page_title_db_summons": "Summons / Database / granblue.team",
|
||||
"page_title_db_series": "Series / Database / granblue.team",
|
||||
"page_title_db_gw": "Unite and Fight / Database / granblue.team",
|
||||
"page_title_db_entity": "{name} / Database / granblue.team",
|
||||
"page_title_db_new": "New {type} / Database / granblue.team",
|
||||
"page_title_db_edit": "Edit {name} / Database / granblue.team",
|
||||
"page_title_db_import": "Import {type} / Database / granblue.team",
|
||||
|
||||
"page_desc_home": "Create, save, and share Granblue Fantasy party compositions",
|
||||
"page_desc_about": "More about granblue.team",
|
||||
"page_desc_teams": "Save and discover teams to use in Granblue Fantasy",
|
||||
"page_desc_collection": "Manage your character, weapon, and summon collection",
|
||||
"page_desc_profile": "Browse {username}'s teams on granblue.team",
|
||||
"page_desc_party": "Browse this team for {raidName} by {username} on granblue.team"
|
||||
}
|
||||
|
|
|
|||
|
|
@ -116,5 +116,34 @@
|
|||
"auth_register_errors_emailInvalid": "有効なメールアドレスを入力してください",
|
||||
"auth_register_errors_emailTaken": "このメールアドレスは既に登録されています",
|
||||
"auth_register_errors_passwordMin": "パスワードは8文字以上で入力してください",
|
||||
"auth_register_errors_passwordMismatch": "パスワードが一致しません"
|
||||
"auth_register_errors_passwordMismatch": "パスワードが一致しません",
|
||||
|
||||
"page_title_home": "granblue.team",
|
||||
"page_title_about": "サイトについて / granblue.team",
|
||||
"page_title_teams": "チームを探す / granblue.team",
|
||||
"page_title_collection": "コレクション / granblue.team",
|
||||
"page_title_new": "新しいチームを作成 / granblue.team",
|
||||
"page_title_profile": "{username}のチーム / granblue.team",
|
||||
"page_title_party": "{emoji} {teamName} by {username} / granblue.team",
|
||||
"page_title_saved": "保存したチーム / granblue.team",
|
||||
"page_title_login": "ログイン / granblue.team",
|
||||
"page_title_register": "登録 / granblue.team",
|
||||
"page_title_settings": "設定 / granblue.team",
|
||||
"page_title_database": "データベース / granblue.team",
|
||||
"page_title_db_characters": "キャラクター / データベース / granblue.team",
|
||||
"page_title_db_weapons": "武器 / データベース / granblue.team",
|
||||
"page_title_db_summons": "召喚石 / データベース / granblue.team",
|
||||
"page_title_db_series": "シリーズ / データベース / granblue.team",
|
||||
"page_title_db_gw": "古戦場 / データベース / granblue.team",
|
||||
"page_title_db_entity": "{name} / データベース / granblue.team",
|
||||
"page_title_db_new": "新規{type} / データベース / granblue.team",
|
||||
"page_title_db_edit": "{name}を編集 / データベース / granblue.team",
|
||||
"page_title_db_import": "{type}インポート / データベース / granblue.team",
|
||||
|
||||
"page_desc_home": "グラブルの編成を作成、保存、共有しましょう",
|
||||
"page_desc_about": "granblue.teamについて",
|
||||
"page_desc_teams": "グラブルで使えるチームを見つけて保存しましょう",
|
||||
"page_desc_collection": "キャラ、武器、召喚石のコレクションを管理",
|
||||
"page_desc_profile": "{username}のチームをgranblue.teamで見る",
|
||||
"page_desc_party": "{raidName}の{username}のチームをgranblue.teamで見る"
|
||||
}
|
||||
|
|
|
|||
38
src/lib/components/PageMeta.svelte
Normal file
38
src/lib/components/PageMeta.svelte
Normal file
|
|
@ -0,0 +1,38 @@
|
|||
<script lang="ts">
|
||||
interface Props {
|
||||
title: string
|
||||
description: string
|
||||
image?: string
|
||||
url?: string
|
||||
type?: 'website' | 'article'
|
||||
}
|
||||
|
||||
let { title, description, image, url, type = 'website' }: Props = $props()
|
||||
</script>
|
||||
|
||||
<svelte:head>
|
||||
<title>{title}</title>
|
||||
<meta name="description" content={description} />
|
||||
|
||||
<!-- Open Graph -->
|
||||
<meta property="og:title" content={title} />
|
||||
<meta property="og:description" content={description} />
|
||||
<meta property="og:type" content={type} />
|
||||
<meta property="og:site_name" content="granblue.team" />
|
||||
{#if url}
|
||||
<meta property="og:url" content={url} />
|
||||
{/if}
|
||||
{#if image}
|
||||
<meta property="og:image" content={image} />
|
||||
{/if}
|
||||
|
||||
<!-- Twitter Card -->
|
||||
{#if image}
|
||||
<meta name="twitter:card" content="summary_large_image" />
|
||||
<meta name="twitter:image" content={image} />
|
||||
{:else}
|
||||
<meta name="twitter:card" content="summary" />
|
||||
{/if}
|
||||
<meta name="twitter:title" content={title} />
|
||||
<meta name="twitter:description" content={description} />
|
||||
</svelte:head>
|
||||
Loading…
Reference in a new issue