From 3748afbd7ee63dd4e19a7776f7091eb7a0e97481 Mon Sep 17 00:00:00 2001 From: Marco Pedone Date: Fri, 8 Aug 2025 14:13:27 +0200 Subject: [PATCH] Implement Open Graph meta tags in AnnuncioDettaglio for improved SEO and social sharing --- apps/infoalloggi/src/pages/annuncio/[cod].tsx | 176 +++++++++--------- 1 file changed, 90 insertions(+), 86 deletions(-) diff --git a/apps/infoalloggi/src/pages/annuncio/[cod].tsx b/apps/infoalloggi/src/pages/annuncio/[cod].tsx index ca99c97..502607e 100644 --- a/apps/infoalloggi/src/pages/annuncio/[cod].tsx +++ b/apps/infoalloggi/src/pages/annuncio/[cod].tsx @@ -73,6 +73,30 @@ const AnnuncioDettaglio: NextPage = ({ flag, meta, }: AnnuncioProps) => { + return ( +
+ + {`${cod} | ${meta.title}`} + + + + + + + + + + + + +
+ ); +}; + +const AnnuncioView = ({ cod, flag }: Omit) => { const session = useSession(); const { locale } = useTranslation(); @@ -87,105 +111,84 @@ const AnnuncioDettaglio: NextPage = ({ if (isLoading || session.status === "pending") return ; if ( - (!isLoading && !data) || + !data || session.status === "error" || (data && data.stato === "Sospeso") ) { return ; } - if (!isLoading && data) { - const titolo = (locale === "it" ? data.titolo_it : data.titolo_en) || ""; - const description = (locale === "it" ? data.desc_it : data.desc_en) || ""; - const filteredCaratt = data.caratteristiche - ? filteredCaratteristiche(data.caratteristiche) - : null; + const titolo = (locale === "it" ? data.titolo_it : data.titolo_en) || ""; + const description = (locale === "it" ? data.desc_it : data.desc_en) || ""; - return ( - - -
- - {`${cod} | ${meta.title}`} - - - - - - - - - - - -
- + const filteredCaratt = data.caratteristiche + ? filteredCaratteristiche(data.caratteristiche) + : null; -
-
-
- - {session.user?.isAdmin ? ( - - Modifica annuncio - - ) : ( - + return ( + + +
+ + +
+
+
+ + {session.user?.isAdmin ? ( + - - - )} -
-
-
- + Modifica annuncio + + ) : ( + -
+ )} + {data.tipo && + (data.tipo == "Transitorio" || data.tipo == "Stabile") && ( + <> + + + )}
- +
+
-
-
-
- ); - } - return
Errore
; + + + + + + ); }; export async function getStaticProps( @@ -201,6 +204,7 @@ export async function getStaticProps( await ssg.annunci.getAnnuncio.prefetch({ cod: cod }); const meta = await ssg.annunci.getAnnuncioMeta.fetch({ cod: cod }); + console.log("meta", meta); const flag = await ssg.settings.GetFlagValue.fetch({ id: "ANNUNCIO_INTERACTIONS_DISABLED",