Skip to content

Commit 2c47b56

Browse files
committed
Enable to override meta tags via helper methods
1 parent af4611a commit 2c47b56

File tree

2 files changed

+13
-26
lines changed

2 files changed

+13
-26
lines changed

app/helpers/application_helper.rb

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,28 @@
11
# -*- coding: utf-8 -*-
22
module ApplicationHelper
33
def full_title(page_title)
4-
base_title = "CoderDojo Japan"
4+
page_title ||= @obj.display_title if @obj && !@obj.permalink.nil?
55
if page_title.empty?
6-
"CoderDojo Japan - 子どものためのプログラミング道場"
6+
"CoderDojo Japan - 子どものためのプログラミング道場" # Default title
77
else
8-
"#{page_title} - #{base_title}"
8+
"#{page_title} - CoderDojo Japan"
99
end
1010
end
1111

1212
def full_url(page_url)
13-
default_url = "https://coderdojo.jp/"
13+
base_url = 'https://coderdojo.jp/'
14+
page_url ||= base_url + @obj.permalink if @obj && !@obj.permalink.nil?
1415
if page_url.empty?
15-
default_url
16+
"https://coderdojo.jp/" # Default URL
1617
else
1718
page_url
1819
end
1920
end
2021

2122
def meta_description(description)
23+
description ||= kata_description if @obj && @obj.permalink == "kata"
2224
if description.empty?
23-
"CoderDojo は子どものためのプログラミング道場です。2011年にアイルランドで始まり、全国では#{Dojo::NUM_OF_JAPAN_DOJOS}ヶ所以上、世界では#{Dojo::NUM_OF_COUNTRIES}ヶ国・#{Dojo::NUM_OF_WHOLE_DOJOS}ヶ所で開催されています。"
25+
"CoderDojo は子どものためのプログラミング道場です。2011年にアイルランドで始まり、全国では#{Dojo::NUM_OF_JAPAN_DOJOS}ヶ所以上、世界では#{Dojo::NUM_OF_COUNTRIES}ヶ国・#{Dojo::NUM_OF_WHOLE_DOJOS}ヶ所で開催されています。" # Default description
2426
else
2527
description
2628
end

app/views/layouts/application.html.erb

Lines changed: 5 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -7,11 +7,7 @@
77
content="width=device-width, initial-scale=1,
88
minimum-scale=1, maximum-scale=1, user-scalable=no">
99

10-
<% if @obj && !@obj.permalink.nil? %>
11-
<title><%= @obj.display_title %> - CoderDojo Japan</title>
12-
<% else %>
13-
<title><%= full_title(yield(:title)) %></title>
14-
<% end %>
10+
<title><%= full_title(yield(:title)) %></title>
1511

1612
<%= stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track' => true %>
1713
<%= javascript_include_tag 'application', 'data-turbolinks-track' => true %>
@@ -20,21 +16,10 @@
2016

2117
<meta property="fb:admins" content="715330868" />
2218
<meta property="fb:app_id" content="805184859580207" />
23-
<% if @obj && !@obj.permalink.nil? %>
24-
<meta property="og:title" content="<%= @obj.display_title %> - CoderDojo Japan">
25-
<meta property="og:url" content="https://coderdojo.jp/<%= @obj.permalink %>">
26-
<% else %>
27-
<meta property="og:title" content="<%= full_title(yield(:title)) %>">
28-
<meta property="og:url" content="<%= full_url(yield(:url)) %>">
29-
<% end %>
30-
31-
<% if @obj && @obj.permalink == "kata" %>
32-
<meta name="description" content="<%= kata_description %>" />
33-
<meta property="og:description" content="<%= kata_description %>" />
34-
<% else %>
35-
<meta name="description" content="<%= meta_description(yield(:meta_description)) %>" />
36-
<meta property="og:description" content="<%= meta_description(yield(:meta_description)) %>" />
37-
<% end %>
19+
<meta property="og:title" content="<%= full_title(yield(:title)) %>">
20+
<meta property="og:url" content="<%= full_url(yield(:url)) %>">
21+
<meta name="description" content="<%= meta_description(yield(:meta_description)) %>" />
22+
<meta property="og:description" content="<%= meta_description(yield(:meta_description)) %>" />
3823

3924
<meta property="og:type" content="website">
4025
<meta property="og:image" content="https://coderdojo.jp/og-image.png">

0 commit comments

Comments
 (0)