diff --git a/lib/alchemy/admin/preview_url.rb b/lib/alchemy/admin/preview_url.rb index 3c8ddece66..2b2325e88a 100644 --- a/lib/alchemy/admin/preview_url.rb +++ b/lib/alchemy/admin/preview_url.rb @@ -43,7 +43,7 @@ def url_for(page) if @preview_config && uri uri_class.build( host: uri.host, - path: "/#{page.urlname}", + path: page.url_path, userinfo: userinfo, ).to_s else diff --git a/spec/libraries/admin/preview_url_spec.rb b/spec/libraries/admin/preview_url_spec.rb index 2827fec62e..8c2b9e91f7 100644 --- a/spec/libraries/admin/preview_url_spec.rb +++ b/spec/libraries/admin/preview_url_spec.rb @@ -121,6 +121,20 @@ end end end + + context "with page being the language root page" do + let(:page) { create(:alchemy_page, :language_root) } + + before do + stub_alchemy_config(:preview, { + "host" => "https://www.example.com", + }) + end + + it "returns the preview url without urlname" do + is_expected.to eq "https://www.example.com/" + end + end end end end