feat(F-048): completed feature
This commit is contained in:
@@ -26,7 +26,7 @@ export async function generateMetadata({ params }: PageProps): Promise<Metadata>
|
||||
const category = await loadCategory(slug);
|
||||
const title = category.seoTitle ?? category.name;
|
||||
const description =
|
||||
category.seoDescription ?? `Productos de la categoría ${category.name} en MercadoDeVida.`;
|
||||
category.seoDescription ?? `Productos de la categoría ${category.name} en mercadodevida.`;
|
||||
|
||||
return {
|
||||
title: metadataTitle(title),
|
||||
|
||||
@@ -6,11 +6,11 @@ import { absoluteUrl } from '@/lib/seo';
|
||||
import { JsonLdScript, organizationJsonLd } from '@/lib/seo/json-ld';
|
||||
|
||||
export const metadata: Metadata = {
|
||||
title: 'MercadoDeVida',
|
||||
title: 'mercadodevida',
|
||||
description: 'Productos ecológicos y saludables seleccionados con información transparente.',
|
||||
alternates: { canonical: absoluteUrl('/') },
|
||||
openGraph: {
|
||||
title: 'MercadoDeVida',
|
||||
title: 'mercadodevida',
|
||||
description: 'Productos ecológicos y saludables seleccionados con información transparente.',
|
||||
url: absoluteUrl('/'),
|
||||
type: 'website',
|
||||
|
||||
@@ -25,7 +25,7 @@ export async function generateMetadata({ params }: PageProps): Promise<Metadata>
|
||||
const { slug } = await params;
|
||||
const brand = await loadBrand(slug);
|
||||
const title = brand.seoTitle ?? brand.name;
|
||||
const description = brand.seoDescription ?? `Productos de ${brand.name} en MercadoDeVida.`;
|
||||
const description = brand.seoDescription ?? `Productos de ${brand.name} en mercadodevida.`;
|
||||
|
||||
return {
|
||||
title: metadataTitle(title),
|
||||
|
||||
@@ -24,7 +24,7 @@ export default async function HomePage() {
|
||||
Alimentación ecológica con información transparente desde el primer clic.
|
||||
</h1>
|
||||
<p className="max-w-2xl text-lg leading-8 text-stone-700">
|
||||
MercadoDeVida une catálogo, marcas y datos nutricionales confiables para que cada compra
|
||||
mercadodevida une catálogo, marcas y datos nutricionales confiables para que cada compra
|
||||
sea simple, consciente y sin sorpresas.
|
||||
</p>
|
||||
<div className="flex flex-col gap-3 sm:flex-row">
|
||||
|
||||
@@ -81,7 +81,7 @@ export default async function ProductPage({ params }: PageProps) {
|
||||
{product.name}
|
||||
</h1>
|
||||
<p className="text-lg leading-8 text-stone-700">
|
||||
{product.description ?? 'Producto del catálogo público de MercadoDeVida.'}
|
||||
{product.description ?? 'Producto del catálogo público de mercadodevida.'}
|
||||
</p>
|
||||
<dl className="grid gap-4 rounded-3xl border border-emerald-900/10 bg-white p-6 text-sm text-stone-700 sm:grid-cols-2">
|
||||
<div>
|
||||
|
||||
@@ -29,8 +29,8 @@ export async function generateMetadata({ searchParams }: PageProps): Promise<Met
|
||||
const q = boundedText(firstParam(params.q));
|
||||
const title = q ? `Resultados para ${q}` : 'Buscar productos';
|
||||
const description = q
|
||||
? `Resultados de búsqueda para ${q} en MercadoDeVida.`
|
||||
: 'Buscá productos ecológicos y saludables en MercadoDeVida.';
|
||||
? `Resultados de búsqueda para ${q} en mercadodevida.`
|
||||
: 'Buscá productos ecológicos y saludables en mercadodevida.';
|
||||
|
||||
return {
|
||||
title: metadataTitle(title),
|
||||
|
||||
@@ -2,7 +2,7 @@ export function SiteFooter() {
|
||||
return (
|
||||
<footer className="border-t border-emerald-900/10 bg-white">
|
||||
<div className="mx-auto flex max-w-6xl flex-col gap-2 px-6 py-8 text-sm text-stone-600 md:flex-row md:items-center md:justify-between">
|
||||
<p>© {new Date().getFullYear()} MercadoDeVida</p>
|
||||
<p>© {new Date().getFullYear()} mercadodevida</p>
|
||||
<p>Alimentación consciente, datos claros y compra sin sorpresas.</p>
|
||||
</div>
|
||||
</footer>
|
||||
|
||||
@@ -13,7 +13,7 @@ export function SiteHeader() {
|
||||
aria-label="Principal"
|
||||
>
|
||||
<a href="/" className="text-xl font-bold tracking-tight text-emerald-950">
|
||||
MercadoDeVida
|
||||
mercadodevida
|
||||
</a>
|
||||
<ul className="hidden items-center gap-6 text-sm font-medium text-stone-700 md:flex">
|
||||
{navigation.map((item) => (
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
export const SITE_NAME = 'MercadoDeVida';
|
||||
export const SITE_NAME = 'mercadodevida';
|
||||
export const SITE_URL = (process.env.NEXT_PUBLIC_SITE_URL ?? 'http://localhost:3001').replace(
|
||||
/\/$/,
|
||||
'',
|
||||
|
||||
Reference in New Issue
Block a user