Skip to content

Commit aaaa377

Browse files
authored
Merge pull request #243 from kpumuk/mirror-empty-title
Fallback to site name when title is empty in mirrored tags
2 parents 95b07b5 + 3d40c0d commit aaaa377

File tree

4 files changed

+21
-4
lines changed

4 files changed

+21
-4
lines changed

CHANGELOG.md

+6
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,11 @@
11
# Changelog
22

3+
## 2.18.0 (September 15, 2022) [](https://github.com/kpumuk/meta-tags/compare/v2.17.0...v2.18.0)
4+
5+
Changes:
6+
7+
- Fallback to site name when title is empty in mirrored tags ([243](https://github.com/kpumuk/meta-tags/pull/243))
8+
39
## 2.17.0 (July 5, 2022) [](https://github.com/kpumuk/meta-tags/compare/v2.16.0...v2.17.0)
410

511
Changes:

lib/meta_tags/meta_tags_collection.rb

+4-2
Original file line numberDiff line numberDiff line change
@@ -70,14 +70,16 @@ def full_title(defaults = {})
7070
with_defaults(defaults) { extract_full_title }
7171
end
7272

73-
# Constructs the title without site title (for normalized parameters).
73+
# Constructs the title without site title (for normalized parameters). When title is empty,
74+
# use the site title instead.
7475
#
7576
# @return [String] page title.
7677
#
7778
def page_title(defaults = {})
7879
old_site = @meta_tags[:site]
7980
@meta_tags[:site] = nil
80-
with_defaults(defaults) { extract_full_title }
81+
full_title = with_defaults(defaults) { extract_full_title }
82+
full_title.presence || old_site || ''
8183
ensure
8284
@meta_tags[:site] = old_site
8385
end

lib/meta_tags/version.rb

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,6 @@
22

33
module MetaTags
44
# Gem version.
5-
VERSION = '2.17.0'
5+
VERSION = '2.18.0'
66
public_constant :VERSION
77
end

spec/view_helper/open_graph_spec.rb

+10-1
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@
6565
end
6666
end
6767

68-
it "properlies handle title and site title in mirrored content" do
68+
it "properly handle title and site title in mirrored content" do
6969
subject.set_meta_tags(title: 'someTitle', site: 'someSite')
7070
subject.display_meta_tags(open_graph: { title: :title, site_name: :site, full_title: :full_title }).tap do |meta|
7171
expect(meta).to have_tag('meta', with: { content: "someTitle", property: "og:title" })
@@ -74,6 +74,15 @@
7474
end
7575
end
7676

77+
it "uses site_title for mirrored title, when title is empty" do
78+
subject.set_meta_tags(title: '', site: 'someSite')
79+
subject.display_meta_tags(open_graph: { title: :title, site_name: :site, full_title: :full_title }).tap do |meta|
80+
expect(meta).to have_tag('meta', with: { content: "someSite", property: "og:title" })
81+
expect(meta).to have_tag('meta', with: { content: "someSite", property: "og:site_name" })
82+
expect(meta).to have_tag('meta', with: { content: "someSite", property: "og:full_title" })
83+
end
84+
end
85+
7786
it "displays open graph meta tags with an array of images" do
7887
subject.set_meta_tags(
7988
open_graph: {

0 commit comments

Comments
 (0)