SEO対策・favicon追加

This commit is contained in:
system_master 2026-01-07 20:14:30 +09:00
parent 130fc1c0e0
commit cc757f1c0b
5 changed files with 127 additions and 5 deletions

BIN
public/apple-touch-icon.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

BIN
public/favicon.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

BIN
public/ogp.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 72 KiB

View File

@ -13,8 +13,21 @@ import { CompanyProvider } from "@/components/providers/CompanyProvider";
import LoadingLayout from "@/components/ui/LoadingLayout";
export const metadata: Metadata = {
title: "株式会社BaseCafe",
description: "",
title: {
default: "BaseCafe自家焙煎コーヒースタンドコワーキング拠点",
template: "%sBaseCafe",
},
description:
"BaseCafeは自家焙煎コーヒースタンドに、コワーキングスペース「Base Bettaku」とイベントスペースを併設した拠点です。作業、打ち合わせ、コミュニティイベントまで。",
openGraph: {
type: "website",
siteName: "BaseCafe",
images: [{ url: "/ogp.jpg", width: 1200, height: 630 }],
},
icons: {
icon: [{ url: "/favicon.ico" }],
apple: [{ url: "/apple-touch-icon.png", sizes: "180x180" }],
},
};
export default async function RootLayout({ children }: { children: React.ReactNode }) {
const companyInfo = await getCompanyInfo();
@ -23,7 +36,117 @@ export default async function RootLayout({ children }: { children: React.ReactNo
lang="ja"
className={`${rounded.variable} ${mincho.variable} ${yusei.variable} ${rocknroll.variable}`}
>
<head>
<body className="font-sans bg-stone-50 text-stone-800 antialiased leading-relaxed">
<Script
id="ldjson-localbusiness"
type="application/ld+json"
dangerouslySetInnerHTML={{
__html: JSON.stringify({
"@context": "https://schema.org",
"@graph": [
{
"@type": "WebSite",
"@id": "https://basecafe.jp/#website",
url: "https://basecafe.jp/",
name: "BaseCafe",
inLanguage: "ja",
publisher: { "@id": "https://basecafe.jp/#organization" },
},
{
"@type": "Organization",
"@id": "https://basecafe.jp/#organization",
name: "株式会社BaseCafe",
url: "https://basecafe.jp/",
logo: {
"@type": "ImageObject",
url: "https://basecafe.jp/apple-touch-icon.png",
},
sameAs: ["https://www.instagram.com/basecafe_2024"],
},
{
"@type": ["CafeOrCoffeeShop", "LocalBusiness"],
"@id": "https://basecafe.jp/#basecafe",
name: "BaseCafe自家焙煎コーヒースタンド",
url: "https://basecafe.jp/",
image: ["https://basecafe.jp/ogp.jpg"],
priceRange: "¥",
address: {
"@type": "PostalAddress",
postalCode: "271-0073",
addressRegion: "千葉県",
addressLocality: "松戸市",
streetAddress: "小根本159-3 アムール豊友104",
addressCountry: "JP",
},
geo: {
"@type": "GeoCoordinates",
latitude: 35.7883681,
longitude: 139.9087747,
},
openingHoursSpecification: [
{
"@type": "OpeningHoursSpecification",
dayOfWeek: [
"Monday",
"Tuesday",
"Friday",
"Saturday",
"Sunday",
],
opens: "08:00",
closes: "18:00",
},
],
department: { "@id": "https://basecafe.jp/#basebettaku" },
},
{
"@type": ["CoworkingSpace", "LocalBusiness"],
"@id": "https://basecafe.jp/#basebettaku",
name: "Base Bettakuコワーキング・イベントスペース",
url: "https://basecafe.jp/reservation",
image: ["https://basecafe.jp/ogp.jpg"],
address: {
"@type": "PostalAddress",
postalCode: "271-0073",
addressRegion: "千葉県",
addressLocality: "松戸市",
streetAddress: "小根本159-3 アムール豊友104",
addressCountry: "JP",
},
geo: {
"@type": "GeoCoordinates",
latitude: 35.7883681,
longitude: 139.9087747,
},
amenityFeature: [
{
"@type": "LocationFeatureSpecification",
name: "オープンスペース約20畳",
value: true,
},
{
"@type": "LocationFeatureSpecification",
name: "個室約8畳 × 3",
value: true,
},
{
"@type": "LocationFeatureSpecification",
name: "イベント・コミュニティ利用",
value: true,
},
{
"@type": "LocationFeatureSpecification",
name: "コーヒースタンド併設(ドリンク・フード提供)",
value: true,
},
],
},
],
}),
}}
/>
{/* ✅ Google Analytics */}
<Script
strategy="afterInteractive"
@ -37,8 +160,6 @@ export default async function RootLayout({ children }: { children: React.ReactNo
gtag('config', '${process.env.NEXT_PUBLIC_GA_ID}');
`}
</Script>
</head>
<body className="font-sans bg-stone-50 text-stone-800 antialiased leading-relaxed">
<LoadingLayout>
<CompanyProvider company={companyInfo}>
<Header company={companyInfo} />

View File

@ -28,6 +28,7 @@ type MenuItem = {
const menuItems: MenuItem[] = [
{ label: "スケジュール", href: "/schedule" },
{ label: "新着情報", href: "/news" },
{ label: "BaseCafeのコーヒー", href: "/ext/coffee/" },
{ label: "ブランド", href: "/brand" },
{ label: "会社情報", href: "/company" },
{