feat(portfolio): mise à jour du site avec de nouvelles sections et améliorations SEO
- Révision des métadonnées dans index.html pour un meilleur référencement. - Ajout de nouvelles sections : FAQ, Témoignages, Services, et CTA. - Intégration de données structurées pour les FAQ et les témoignages. - Amélioration du fichier robots.txt pour un meilleur contrôle d'indexation. - Mise à jour du sitemap.xml avec de nouvelles URLs. - Ajout de nouveaux composants Vue.js pour les sections de témoignages et de services. - Amélioration des styles CSS pour une meilleure présentation des sections. - Ajout de la gestion des dates et des témoignages dans le composant testimonials.
This commit is contained in:
36
src/components/shared/CTAButtons.vue
Normal file
36
src/components/shared/CTAButtons.vue
Normal file
@@ -0,0 +1,36 @@
|
||||
<template>
|
||||
<div class="cta-buttons-container">
|
||||
<div class="cta-buttons" :class="layoutClass">
|
||||
<slot></slot>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script setup lang="ts">
|
||||
import { computed } from 'vue'
|
||||
|
||||
interface Props {
|
||||
layout?: 'columns' | 'row' | 'stack'
|
||||
maxButtons?: number
|
||||
}
|
||||
|
||||
const props = withDefaults(defineProps<Props>(), {
|
||||
layout: 'columns',
|
||||
maxButtons: 3
|
||||
})
|
||||
|
||||
const layoutClass = computed(() => {
|
||||
switch (props.layout) {
|
||||
case 'row':
|
||||
return 'cta-buttons--row'
|
||||
case 'stack':
|
||||
return 'cta-buttons--stack'
|
||||
default:
|
||||
return 'cta-buttons--columns'
|
||||
}
|
||||
})
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
@import '@/components/styles/CTAButtons.css';
|
||||
</style>
|
Reference in New Issue
Block a user