diff --git a/components/ArticleCard.vue b/components/ArticleCard.vue new file mode 100644 index 0000000..c55d3d8 --- /dev/null +++ b/components/ArticleCard.vue @@ -0,0 +1,112 @@ + + + + + + + \ No newline at end of file diff --git a/components/ArticleCarousel.vue b/components/ArticleCarousel.vue new file mode 100644 index 0000000..fdf0b09 --- /dev/null +++ b/components/ArticleCarousel.vue @@ -0,0 +1,171 @@ + + + + + + + \ No newline at end of file diff --git a/i18n/locales/de.json b/i18n/locales/de.json index ecaa707..0b2269a 100644 --- a/i18n/locales/de.json +++ b/i18n/locales/de.json @@ -121,11 +121,11 @@ }, "webagency": { "hero": { - "title": "Ihre Webagentur für strategische Webentwicklung und funktionales Webdesign in Herrsching am Ammersee", - "subtitle": "Wir entwickeln Webseiten, die aus Besuchern Kunden machen!", - "text1": "Wir stehen für professionelle, innovative und strategische Weblösungen und kombinieren technisches Know-how mit einem tiefen Verständnis für digitale Kommunikation, um Unternehmen online erfolgreich zu positionieren", - "text2": "Unser Ansatz ist immer individuell: Jedes Projekt wird mit Sorgfalt, Weitblick und den neuesten Technologien realisiert. Dabei setzen wir auf eine enge Zusammenarbeit und maßgeschneiderte Lösungen, die zu unseren Kunden passen. Wir begleiten Unternehmen aus unterschiedlichsten Branchen – von kleinen Betrieben bis hin zu größeren Firmen – auf ihrem Weg zu einer erfolgreichen Online-Präsenz.", - "text3": "Lassen Sie uns gemeinsam Ihre digitale Präsenz optimieren!", + "title": "Ihre Webagentur in Herrsching am Ammersee", + "subtitle": "Wir entwickeln strategische Webseiten mit funktionalem Design, die aus Besuchern Kunden machen!", + "text1": "Digitale Sichtbarkeit beginnt mit einer Website, die mehr kann als gut aussehen: Sie wird zum zentralen Marketinginstrument: Vom MVP (Minimal Viable Product) bis hin zum ausgereiften Lead-Generator.", + "text2": "Mit modernen Technologien wie Nuxt 3 und einem Headless CMS entstehen Weblösungen, die flexibel wachsen, effizient im Team gepflegt werden können und perfekt auf Kommunikations- und Marketingprozesse abgestimmt sind.", + "text3": "Ob Unternehmen oder Agentur – im Fokus steht immer eine Lösung, die Ziele erreichbar macht: sichtbar werden, Vertrauen aufbauen, Kunden gewinnen.", "button": "Ihr Kontakt zu uns!" }, "team": { diff --git a/pages/article/[link].vue b/pages/article/[link].vue index f3b7b80..98e6512 100644 --- a/pages/article/[link].vue +++ b/pages/article/[link].vue @@ -1,50 +1,59 @@ @@ -63,11 +72,20 @@ const runtimeConfig = useRuntimeConfig(); const route = useRoute() - const slug = route.params.link - console.log(slug) + + const slug = ref(route.params.link) + watch(() => route.params.link, (newSlug) => { + slug.value = newSlug + }) + const mainStore = useMainStore() - const { articles } = storeToRefs(mainStore) + const { articles, getRecommendedArticles } = storeToRefs(mainStore) + + const recommendedArticles = computed(() => { + if (!article.value) return [] + return getRecommendedArticles.value(article.value) + }) const { t } = useI18n() @@ -76,7 +94,7 @@ // Artikel suchen const article = computed(() => { if (!articles.value) return null - return articles.value.find(item => item.slug === slug) ?? null + return articles.value.find(item => item.slug === slug.value) ?? null }) const { convertToHTML } = useHtmlConverter() @@ -182,7 +200,7 @@ .paper background-color: rgba(white, .98) width: 88% - margin: 10rem 6% 15vh 6% + margin: 10rem 6% 3rem 6% position: relative z-index: 1 border-radius: 1rem diff --git a/pages/magazin/index.vue b/pages/magazin/index.vue index eda699d..b3563ac 100644 --- a/pages/magazin/index.vue +++ b/pages/magazin/index.vue @@ -33,32 +33,16 @@ class="grid" appear > -
- -
- -
-

{{ article.header }}

-
- -
-
-
+ :header="article.header" + :image="article.image" + :link="localePath({ name: 'article-link', params: { link: article.slug } })" + :readmore-text="$t('pages.magazin.readmore')" + /> + @@ -66,6 +50,14 @@ \ No newline at end of file diff --git a/pages/webagency/index.vue b/pages/webagency/index.vue index 6de8df2..8361e31 100644 --- a/pages/webagency/index.vue +++ b/pages/webagency/index.vue @@ -104,6 +104,14 @@