diff --git a/public/logo-v4.png b/public/logo-v4.png new file mode 100644 index 0000000..8f0453b Binary files /dev/null and b/public/logo-v4.png differ diff --git a/src/app/artist/[id]/page.tsx b/src/app/artist/[id]/page.tsx index 1d9939a..edae975 100644 --- a/src/app/artist/[id]/page.tsx +++ b/src/app/artist/[id]/page.tsx @@ -16,10 +16,10 @@ export async function generateMetadata({ }: ArtistPageProps): Promise { const { id } = await params; const artist = getArtist(id); - if (!artist) return { title: "艺人不存在 · CYBER STAR" }; + if (!artist) return { title: "艺人不存在 · 银河初星计划 C . S . G" }; return { - title: `${artist.name} · ${artist.enName} · CYBER STAR`, + title: `${artist.name} · ${artist.enName} · 银河初星计划 C . S . G`, description: artist.bio.slice(0, 120), }; } diff --git a/src/app/favicon.ico b/src/app/favicon.ico index 718d6fe..c38e65a 100644 Binary files a/src/app/favicon.ico and b/src/app/favicon.ico differ diff --git a/src/app/layout.tsx b/src/app/layout.tsx index f725429..f39646c 100644 --- a/src/app/layout.tsx +++ b/src/app/layout.tsx @@ -33,15 +33,27 @@ const inter = Inter({ }); export const metadata: Metadata = { - title: "CYBER ✦ STAR · 虚拟偶像 Top12 出道企划", + title: "银河初星计划 C . S . G", description: - "36 位虚拟偶像候选人,由你投票决出最终出道 Top12。Cyber Star · Virtual Idol Debut Project.", - keywords: ["虚拟偶像", "出道", "投票", "Top12", "Cyber Star", "Virtual Idol"], + "36 位虚拟偶像候选人,由你投票决出最终出道 Top12。银河初星计划 C . S . G。", + keywords: [ + "银河初星计划", + "C . S . G", + "虚拟偶像", + "出道", + "投票", + "Top12", + "Virtual Idol", + ], openGraph: { - title: "CYBER ✦ STAR", + title: "银河初星计划 C . S . G", description: "虚拟偶像 Top12 出道企划", type: "website", }, + icons: { + icon: "/favicon.ico?v=4", + shortcut: "/favicon.ico?v=4", + }, }; export default function RootLayout({ diff --git a/src/app/login/LoginForm.tsx b/src/app/login/LoginForm.tsx index 1a69a99..e27c37f 100644 --- a/src/app/login/LoginForm.tsx +++ b/src/app/login/LoginForm.tsx @@ -93,8 +93,8 @@ export default function LoginForm() { {/* Logo */}
CYBER STAR

- © {year} CYBER STAR · All Rights Reserved + © {year} 银河初星计划 C . S . G · All Rights Reserved

diff --git a/src/components/HeroBanner.tsx b/src/components/HeroBanner.tsx index d2995ba..f73864d 100644 --- a/src/components/HeroBanner.tsx +++ b/src/components/HeroBanner.tsx @@ -90,8 +90,8 @@ export default function HeroBanner({
{/* Eyebrow 左上 · 紧贴导航下方 */}
-

- Top 12 · Cyber Star Debut Survival +

+ 银河初星计划 C . S . G

diff --git a/src/components/Logo.tsx b/src/components/Logo.tsx index a65f4fd..6482450 100644 --- a/src/components/Logo.tsx +++ b/src/components/Logo.tsx @@ -8,7 +8,7 @@ interface LogoProps { className?: string; } -// 高度由 size 控制,宽度按 logo.png 实际比例(约 5.41:1,单行 CYBER STAR + 星环)自适应 +// 高度由 size 控制,宽度按 logo-v4.png 实际比例自适应 const HEIGHT_PX: Record = { sm: 24, md: 44, @@ -25,11 +25,11 @@ export default function Logo({ // 用原生 绕开 Next/Image 的格式转换 —— 某些环境下 sharp 把透明 PNG // 转 webp/avif 时会铺白底,导致 logo 在深色 nav 上出现白色矩形。 - // ?v=2 缓存破坏:logo 改版时 +1,浏览器立刻拉新版而不读老缓存。 + // ?v=4 缓存破坏:logo 改版时 +1,浏览器立刻拉新版而不读老缓存。 const inner = ( CYBER STAR {inner} diff --git a/src/components/Navigation.tsx b/src/components/Navigation.tsx index 3446810..b0fa5f2 100644 --- a/src/components/Navigation.tsx +++ b/src/components/Navigation.tsx @@ -2,6 +2,7 @@ import { useEffect, useState } from "react"; import { usePathname } from "next/navigation"; +import Logo from "./Logo"; import NavLinks from "./NavLinks"; import SearchTrigger from "./SearchTrigger"; import AuthMenu from "./auth/AuthMenu"; @@ -27,6 +28,7 @@ export default function Navigation() { // nav 关掉自己的玻璃,避免双重 backdrop-filter 在 y=80 处出现拼接线。 const filterStuck = useUIStore((s) => s.filterStuck); const glassOff = isTransparent || filterStuck; + const showLogo = pathname !== "/"; // 维护一个站内导航计数器(per-tab),供 FloatingBackButton 判断 router.back() 是否安全 useEffect(() => { @@ -81,7 +83,16 @@ export default function Navigation() { )} />