diff --git a/app/helpers/seo_helper.rb b/app/helpers/seo_helper.rb index 69b898eb3..a26d7762d 100644 --- a/app/helpers/seo_helper.rb +++ b/app/helpers/seo_helper.rb @@ -12,6 +12,19 @@ module SeoHelper "#{Danbooru.config.canonical_app_name} is the original anime image booru. Search millions of anime pictures categorized by thousands of tags." end + # https://developers.google.com/search/docs/data-types/video#video-object + def json_ld_video_data(post) + json_ld_tag({ + "@context": "https://schema.org", + "@type": "VideoObject", + "name": page_title, + "description": meta_description, + "uploadDate": post.created_at.iso8601, + "thumbnailUrl": post.preview_file_url, + "contentUrl": post.file_url, + }) + end + def json_ld_website_data urls = [ Danbooru.config.twitter_url, diff --git a/app/views/posts/show.html.erb b/app/views/posts/show.html.erb index 9a4112cfe..1418f7068 100644 --- a/app/views/posts/show.html.erb +++ b/app/views/posts/show.html.erb @@ -147,6 +147,10 @@ <% if policy(@post).visible? %> <%= tag.meta property: "og:image", content: @post.open_graph_image_url %> + + <% if @post.is_video? %> + <%= json_ld_video_data(@post) %> + <% end %> <% end %> <% if @post.twitter_card_supported? %>