diff --git a/app/models/post.rb b/app/models/post.rb index b761dee70fd..0c9af4a381b 100644 --- a/app/models/post.rb +++ b/app/models/post.rb @@ -1087,7 +1087,8 @@ class Post < ActiveRecord::Base end def image_url - image_upload&.url + raw_url = image_upload&.url + UrlHelper.cook_url(raw_url, secure: image_upload&.secure?, local: true) if raw_url end private diff --git a/app/views/topics/show.html.erb b/app/views/topics/show.html.erb index 30b2cc4c755..9d391f7cb7f 100644 --- a/app/views/topics/show.html.erb +++ b/app/views/topics/show.html.erb @@ -62,7 +62,7 @@ <% if post.image_url %> - + <% end %> diff --git a/spec/requests/topics_controller_spec.rb b/spec/requests/topics_controller_spec.rb index e5e2c356f40..2c03389c5da 100644 --- a/spec/requests/topics_controller_spec.rb +++ b/spec/requests/topics_controller_spec.rb @@ -2438,6 +2438,17 @@ RSpec.describe TopicsController do body = response.body expect(body).to have_tag(:meta, with: { name: 'description', content: '[image_description]' }) end + + it "uses image cdn url for schema markup" do + set_cdn_url("http://cdn.localhost") + post = Fabricate(:post_with_uploaded_image) + cpp = CookedPostProcessor.new(post).update_post_image + + get post.topic.url + + body = response.body + expect(body).to have_tag(:link, with: { itemprop: 'image', href: post.image_url }) + end end end