diff --git a/src/templates/BlogPost.vue b/src/templates/BlogPost.vue index 6c528746f..6b5bca743 100644 --- a/src/templates/BlogPost.vue +++ b/src/templates/BlogPost.vue @@ -236,6 +236,11 @@ export default { linkCopied(val) { this.showAlert = val; }, + img(image) { + if (!image) return ""; + if (image.src) return image.src; + return image; + }, }, metaInfo() { return { @@ -260,7 +265,7 @@ export default { { key: "og:image", property: "og:image", - content: this.$page.blog.image.src, + content: this.img(this.$page.blog.image), }, { key: "twitter:description", @@ -270,7 +275,7 @@ export default { { key: "twitter:image", property: "twitter:image", - content: this.$page.blog.image.src, + content: this.img(this.$page.blog.image), }, { key: "twitter:title", @@ -280,7 +285,7 @@ export default { { key: "twitter:card", name: "twitter:card", - content: this.$page.blog.image.src, + content: this.$page.blog.excerpt, }, ], }; diff --git a/src/templates/Project.vue b/src/templates/Project.vue index b3c1f6a82..88c62bcd1 100644 --- a/src/templates/Project.vue +++ b/src/templates/Project.vue @@ -222,6 +222,13 @@ export default { return pluralize("post", this.$page.project.belongsTo.totalCount); }, }, + methods: { + img(image) { + if (!image) return ""; + if (image.src) return image.src; + return image; + }, + }, metaInfo() { return { title: "", @@ -245,7 +252,7 @@ export default { { key: "og:image", property: "og:image", - content: this.$page.project.image.src, + content: this.img(this.$page.project.image), }, { key: "twitter:description", @@ -255,13 +262,18 @@ export default { { key: "twitter:image", property: "twitter:image", - content: this.$page.project.image.src, + content: this.img(this.$page.project.image), }, { key: "twitter:title", property: "twitter:title", content: this.$page.project.title, }, + { + key: "twitter:card", + name: "twitter:card", + content: this.$page.project.excerpt, + }, ], }; },