💄 Allow slash as post divider
This commit is contained in:
parent
2169e9c564
commit
0eaec5dd8d
@ -70,7 +70,8 @@
|
|||||||
|
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
definePageMeta({
|
definePageMeta({
|
||||||
layout: 'embed',
|
layout: "embed",
|
||||||
|
alias: ["/embed/posts/:area/:id"],
|
||||||
})
|
})
|
||||||
|
|
||||||
const route = useRoute()
|
const route = useRoute()
|
||||||
@ -80,9 +81,17 @@ const attachments = ref<any[]>([])
|
|||||||
const firstImage = ref<string | null>()
|
const firstImage = ref<string | null>()
|
||||||
const firstVideo = ref<string | null>()
|
const firstVideo = ref<string | null>()
|
||||||
|
|
||||||
|
const slug = computed(() => {
|
||||||
|
if (route.params.area) {
|
||||||
|
return `${route.params.area}:${route.params.id}`
|
||||||
|
} else {
|
||||||
|
return route.params.id
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
const { t } = useI18n()
|
const { t } = useI18n()
|
||||||
|
|
||||||
const { data: post } = await useFetch<any>(`${config.public.solarNetworkApi}/cgi/interactive/posts/${route.params.id}`)
|
const { data: post } = await useFetch<any>(`${config.public.solarNetworkApi}/cgi/interactive/posts/${slug.value}`)
|
||||||
|
|
||||||
if (!post.value) {
|
if (!post.value) {
|
||||||
throw createError({
|
throw createError({
|
||||||
@ -132,5 +141,5 @@ useSeoMeta({
|
|||||||
generator: "Solar Network Open Project · Embed Widget",
|
generator: "Solar Network Open Project · Embed Widget",
|
||||||
})
|
})
|
||||||
|
|
||||||
const externalOpenLink = computed(() => `${config.public.solianUrl}/posts/view/${route.params.id}`)
|
const externalOpenLink = computed(() => `${config.public.solianUrl}/posts/view/${slug.value}`)
|
||||||
</script>
|
</script>
|
@ -69,6 +69,10 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
|
definePageMeta({
|
||||||
|
alias: ["/posts/:area/:id"],
|
||||||
|
})
|
||||||
|
|
||||||
const route = useRoute()
|
const route = useRoute()
|
||||||
const config = useRuntimeConfig()
|
const config = useRuntimeConfig()
|
||||||
|
|
||||||
@ -76,9 +80,17 @@ const attachments = ref<any[]>([])
|
|||||||
const firstImage = ref<string | null>()
|
const firstImage = ref<string | null>()
|
||||||
const firstVideo = ref<string | null>()
|
const firstVideo = ref<string | null>()
|
||||||
|
|
||||||
|
const slug = computed(() => {
|
||||||
|
if (route.params.area) {
|
||||||
|
return `${route.params.area}:${route.params.id}`
|
||||||
|
} else {
|
||||||
|
return route.params.id
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
const { t } = useI18n()
|
const { t } = useI18n()
|
||||||
|
|
||||||
const { data: post } = await useFetch<any>(`${config.public.solarNetworkApi}/cgi/interactive/posts/${route.params.id}`)
|
const { data: post } = await useFetch<any>(`${config.public.solarNetworkApi}/cgi/interactive/posts/${slug.value}`)
|
||||||
|
|
||||||
if (!post.value) {
|
if (!post.value) {
|
||||||
throw createError({
|
throw createError({
|
||||||
@ -127,7 +139,7 @@ useSeoMeta({
|
|||||||
ogSiteName: "Solsynth Capital",
|
ogSiteName: "Solsynth Capital",
|
||||||
})
|
})
|
||||||
|
|
||||||
const externalOpenLink = computed(() => `${config.public.solianUrl}/posts/view/${route.params.id}`)
|
const externalOpenLink = computed(() => `${config.public.solianUrl}/posts/view/${slug.value}`)
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style scoped>
|
<style scoped>
|
@ -5,7 +5,7 @@ export default defineSitemapEventHandler(async () => {
|
|||||||
const result = await res.json()
|
const result = await res.json()
|
||||||
|
|
||||||
return result.data.map((item: any) => asSitemapUrl({
|
return result.data.map((item: any) => asSitemapUrl({
|
||||||
loc: item.alias ? `/posts/${item.area_alias}:${item.alias}` : `/posts/${item.id}`,
|
loc: item.alias ? `/posts/${item.area_alias}/${item.alias}` : `/posts/${item.id}`,
|
||||||
lastmod: item.edited_at ?? item.published_at,
|
lastmod: item.edited_at ?? item.published_at,
|
||||||
priority: 0.7,
|
priority: 0.7,
|
||||||
_sitemap: "posts",
|
_sitemap: "posts",
|
||||||
|
@ -50,7 +50,7 @@ export default defineEventHandler(async (event) => {
|
|||||||
.use(rehypeStringify)
|
.use(rehypeStringify)
|
||||||
.process(post.body.content)
|
.process(post.body.content)
|
||||||
|
|
||||||
const slug = post.alias ? `/posts/${post.area_alias}:${post.alias}` : `/posts/${post.id}`
|
const slug = post.alias ? `/posts/${post.area_alias}/${post.alias}` : `/posts/${post.id}`
|
||||||
|
|
||||||
feed.addItem({
|
feed.addItem({
|
||||||
date: new Date(post.published_at),
|
date: new Date(post.published_at),
|
||||||
|
Loading…
Reference in New Issue
Block a user