Przeglądaj źródła

add new meta component and implement it on every page

Olivier Massot 1 rok temu
rodzic
commit
607405fac6

+ 34 - 0
components/Common/Meta.vue

@@ -0,0 +1,34 @@
+<!--
+Définit les balises meta de la page
+-->
+<script setup lang="ts">
+  const props = defineProps({
+    title: {
+      type: String,
+      required: true
+    },
+    description: {
+      type: String,
+      required: true
+    },
+    image: {
+      type: String,
+      required: false,
+      default: 'images/Opentalent'
+    }
+  })
+
+  useSeoMeta({
+    title : props.title,
+    ogTitle : props.title,
+    twitterTitle : props.title,
+    description : props.description,
+    ogDescription : props.description,
+    twitterDescription : props.description,
+    ogImage : props.image,
+    twitterImage: props.image,
+    twitterCard : 'summary_large_image',
+    ogType: 'website',
+    ogLocale: 'fr_FR'
+  })
+</script>

+ 5 - 0
components/JoinUs/MissionDetail.vue

@@ -25,6 +25,11 @@
         </div>
 
         <div v-else-if="job !== null">
+          <CommonMeta
+            :title="job.title"
+            description="Offre d'emploi"
+          />
+
           <LayoutUITitlePage>
             {{ job.title }}
           </LayoutUITitlePage>

+ 7 - 7
components/Layout/Footer/Footer.vue

@@ -68,7 +68,7 @@
               </h5>
             </v-row>
             <v-row>
-              <nuxt-link href="https://ressources.opentalent.fr/display/FAQ/Accueil">
+              <nuxt-link href="https://ressources.opentalent.fr/display/FAQ/Accueil" target="_blank">
                 Foire Aux Questions
               </nuxt-link>
             </v-row>
@@ -191,17 +191,17 @@
       <div class="footnotes">
         <v-row justify="center">
           <p class="mt-6">
-            <a href="/mentions-legales">
+            <nuxt-link to="/mentions-legales">
               Mentions légales
-            </a>
+            </nuxt-link>
             -
-            <a href="/politique-de-confidentialite-et-protection-des-donnees-personnelles">
+            <nuxt-link to="/politique-de-confidentialite-et-protection-des-donnees-personnelles">
               Politiques de cookies
-            </a>
+            </nuxt-link>
             -
-            <a href="/CGV">
+            <nuxt-link to="/CGV">
               Conditions Générales de Ventes
-            </a>
+            </nuxt-link>
           </p>
         </v-row>
 

+ 5 - 0
components/News/Details.vue

@@ -34,6 +34,11 @@
         </div>
 
         <div v-else-if="newsItem !== null" class="news">
+          <CommonMeta
+            :title="newsItem.title"
+            :description="newsItem.leadText"
+          />
+
           <v-row class="center-90">
             <v-col cols="6">
               <v-img :src="getImageUrl(newsItem.attachment)"/>

+ 5 - 0
pages/CGV.vue

@@ -1,4 +1,9 @@
 <template>
+  <CommonMeta
+    title="Conditions générales de vente - Opentalent"
+    description="Conditions générales de vente"
+  />
+
   <LayoutUITitlePage>
     Conditions générales de vente
   </LayoutUITitlePage>

+ 1 - 0
pages/actualites/[id].vue

@@ -1,4 +1,5 @@
 <template>
+  <!-- Balises meta: définies dans le component Details -->
   <NewsDetails />
 
   <LayoutFooterPrefooter />

+ 5 - 0
pages/actualites/index.vue

@@ -1,4 +1,9 @@
 <template>
+  <CommonMeta
+    title="Actualités - Opentalent"
+    description="Les dernières actualités"
+  />
+
   <NewsList />
 
   <LayoutFooterPrefooter />

+ 6 - 1
pages/formations.vue

@@ -1,8 +1,13 @@
 <template>
+  <CommonMeta
+    title="Formation - Opentalent"
+    description="Prise en main ou piqûre de rappel, on est toujours à vos côtés."
+  />
+
   <LayoutUITitlePage>
     Formation
     <template #subtitle>
-      Prise en main ou piqûre de rappel,on est toujours à vos côtés.
+      Prise en main ou piqûre de rappel, on est toujours à vos côtés.
     </template>
   </LayoutUITitlePage>
 

+ 4 - 0
pages/index.vue

@@ -1,4 +1,8 @@
 <template>
+  <CommonMeta
+    title="Opentalent - Logiciels culturels"
+    description="Une gamme de logiciels adaptée à chaque structure culturelle"
+  />
 
   <CommonActionMenu />
 

+ 5 - 0
pages/mentions-legales.vue

@@ -1,4 +1,9 @@
 <template>
+  <CommonMeta
+    title="Mentions légales - Opentalent"
+    description="Mentions légales"
+  />
+
   <LayoutUITitlePage>
     Mentions légales
   </LayoutUITitlePage>

+ 5 - 0
pages/nous-contacter.vue

@@ -1,4 +1,9 @@
 <template>
+  <CommonMeta
+    title="Nous contacter - Opentalent"
+    description="Notre équipe est là pour vous. Contactez-nous!"
+  />
+
   <ContactBanner />
 
   <ContactForm />

+ 2 - 0
pages/nous-rejoindre/[id].vue

@@ -1,4 +1,6 @@
 <template>
+  <!-- Balises meta: définies dans le component Details -->
+
   <CommonBanner
     imageSrc="/images/actu/pub.png"
     imageAlt="banner"

+ 7 - 0
pages/nous-rejoindre/index.vue

@@ -1,4 +1,9 @@
 <template>
+  <CommonMeta
+    title="Nous rejoindre - Opentalent"
+    description="Offres d'emploi et candidatures"
+  />
+
   <LayoutUITitlePage>
     Nous rejoindre
   </LayoutUITitlePage>
@@ -40,3 +45,5 @@ h3 {
   width: 100%;
 }
 </style>
+<script setup lang="ts">
+</script>

+ 5 - 0
pages/opentalent_artist.vue

@@ -1,4 +1,9 @@
 <template>
+  <CommonMeta
+    title="Opentalent Artist"
+    description="Description du produit Opentalent Artist"
+  />
+
   <div class="theme-artist" >
     <CommonActionMenu :actions="stickyMenuActions" />
 

+ 5 - 0
pages/opentalent_manager.vue

@@ -1,4 +1,9 @@
 <template>
+  <CommonMeta
+    title="Opentalent Manager"
+    description="Description du produit Opentalent Manager"
+  />
+
   <div class="theme-manager">
     <CommonBannerTitle
       leftText="School"

+ 5 - 0
pages/opentalent_school.vue

@@ -1,4 +1,9 @@
 <template>
+  <CommonMeta
+    title="Opentalent School"
+    description="Description du produit Opentalent School"
+  />
+
   <div class="theme-school">
     <LogicielsTitle>
       <template #left-text>Artist</template>

+ 5 - 0
pages/politique-de-confidentialite-et-protection-des-donnees-personnelles.vue

@@ -1,4 +1,9 @@
 <template>
+  <CommonMeta
+    title="Politique de confidentialité - Opentalent"
+    description="Politique de confidentialité"
+  />
+
   <LayoutUITitlePage>
     POLITIQUE DE CONFIDENTIALITÉ
   </LayoutUITitlePage>

+ 5 - 0
pages/qui-sommes-nous.vue

@@ -3,6 +3,11 @@
 -->
 
 <template>
+  <CommonMeta
+    title="Qui sommes-nous ? - Opentalent"
+    description="Imaginé par des musiciens pour des musiciens, Opentalent se veut être la référence pour la gestion et la promotion du spectacle vivant sur les territoires."
+  />
+
   <LayoutUITitlePage class="mb-12">
     Qui sommes-nous ?
   </LayoutUITitlePage>

+ 5 - 0
pages/webinaires.vue

@@ -1,4 +1,9 @@
 <template>
+  <CommonMeta
+    title="Webinaires - Opentalent"
+    description="Partez à la découverte de vos logiciels Opentalent."
+  />
+
   <CommonActionMenu />
 
   <LayoutUITitlePage>