2 Commits

2 changed files with 39 additions and 17 deletions

View File

@@ -4,22 +4,44 @@ type UseSeoProps = {
} }
const useSeo = async (props: UseSeoProps = {}) => { const useSeo = async (props: UseSeoProps = {}) => {
const { head, seo } = props || {} const { head, seo } = props || {}
const { data } = await useFetch<any>('/config') const seoMeta = ref<any>()
const seoMeta = computed(() => data.value?.data) if (import.meta.server) {
const { title } = head || {} const { SITE_TITLE, SITE_DESC, SITE_URL } = process.env || {}
useHead({ seoMeta.value = {
...head, site_title: SITE_TITLE,
title: title ? `${title} - ${seoMeta?.value?.site_title}` : seoMeta?.value?.site_title, site_desc: SITE_DESC,
}) site_url: SITE_URL,
useSeoMeta({ }
...seo, const { title } = head || {}
title: seoMeta?.value?.site_title, useHead({
description: seoMeta?.value?.site_desc, link: [
ogTitle: seoMeta?.value?.site_title, { rel: 'icon', href: '/logo.png', sizes: 'any' },
ogDescription: seoMeta?.value?.site_desc, // { rel: 'icon', href: '/favicon.svg', sizes: 'any', type: 'image/svg+xml' },
// ogImage: seoMeta?.value?.site_url, { rel: 'apple-touch-icon', sizes: '180x180', href: '/logo.png' },
// twitterCard: 'summary_large_image', ],
}) meta: [
// used on some mobile browsers
{ name: 'theme-color', content: '#395276' },
],
...head,
title: title ? `${title} - ${seoMeta?.value?.site_title}` : seoMeta?.value?.site_title,
})
useSeoMeta({
...seo,
title: seoMeta?.value?.site_title,
description: seoMeta?.value?.site_desc,
ogTitle: seoMeta?.value?.site_title,
ogDescription: seoMeta?.value?.site_desc,
ogImage: {
url: `${seoMeta?.value?.site_url}/logo.png`,
width: 1024,
height: 1024,
alt: 'logo',
type: 'image/png',
},
twitterCard: 'summary',
})
}
return return
} }

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.2 KiB