diff --git a/app/controllers/application_controller.rb b/app/controllers/application_controller.rb
index 9952dae0167..ecca328bb37 100644
--- a/app/controllers/application_controller.rb
+++ b/app/controllers/application_controller.rb
@@ -80,6 +80,7 @@ class ApplicationController < ActionController::Base
CrawlerDetection.crawler?(request.user_agent, request.headers["HTTP_VIA"])
)
end
+ helper_method :use_crawler_layout?
def perform_refresh_session
refresh_session(current_user) unless @readonly_mode
diff --git a/app/helpers/application_helper.rb b/app/helpers/application_helper.rb
index fc49b2788ad..c05ba27ddad 100644
--- a/app/helpers/application_helper.rb
+++ b/app/helpers/application_helper.rb
@@ -288,6 +288,9 @@ module ApplicationHelper
)
end
+ def is_crawler_homepage?
+ request.path == "/" && use_crawler_layout?
+ end
# Creates open graph and twitter card meta data
def crawlable_meta_data(opts = nil)
opts ||= {}
diff --git a/app/views/layouts/_noscript_header.html.erb b/app/views/layouts/_noscript_header.html.erb
index 61095d320bd..43567d2a069 100644
--- a/app/views/layouts/_noscript_header.html.erb
+++ b/app/views/layouts/_noscript_header.html.erb
@@ -1,5 +1,6 @@
<%= SiteSetting.site_description %>
This is a test description
") + expect(response.body).to include( + "", + ) + end + + it "should not display the site description on another route" do + get "/top", headers: { "HTTP_USER_AGENT" => "Googlebot" } + + expect(response.status).to eq(200) + expect(response.body).not_to include("This is a test description
") + # but still includes the meta tag + expect(response.body).to include( + "", + ) + end end end end