Module: MetaHelper

Defined in:
app/helpers/meta_helper.rb

Instance Method Summary collapse

Instance Method Details

#additional_meta_tagsObject



178
179
180
# File 'app/helpers/meta_helper.rb', line 178

def additional_meta_tags
  content_for(:additional_meta_tags)
end

#meta_page_titleObject



2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
# File 'app/helpers/meta_helper.rb', line 2

def meta_page_title
  @_meta_page_title ||= begin
    title = []

    if record_to_build_from.try(:seo_title).present?
      title << record_to_build_from.seo_title
    else
      title << page_title unless controller_name == 'home_pages'
      title << site_title
    end

    title = title.reject(&:blank?).join(divider)
    stripdown(title).squish
  end
end

#meta_see_alsoObject



142
143
144
145
146
147
148
149
# File 'app/helpers/meta_helper.rb', line 142

def meta_see_also
  @_meta_see_also ||= begin
    [
      content_for(:meta_see_also),
      root_path
    ].reject(&:blank?).first
  end
end

#meta_typeObject



151
152
153
154
155
156
157
158
# File 'app/helpers/meta_helper.rb', line 151

def meta_type
  @_meta_type ||= begin
    [
      content_for(:meta_type),
      default_meta_type
    ].reject(&:blank?).first
  end
end

#meta_urlObject



160
161
162
163
164
165
166
167
# File 'app/helpers/meta_helper.rb', line 160

def meta_url
  @_meta_url ||= begin
    [
      content_for(:meta_url),
      (request.base_url.force_encoding('utf-8') + request.path.force_encoding('utf-8'))
    ].reject(&:blank?).first
  end
end

#meta_viewportObject



169
170
171
172
173
174
175
176
# File 'app/helpers/meta_helper.rb', line 169

def meta_viewport
  @_meta_viewport ||= begin
    [
      content_for(:meta_viewport),
      'width=device-width, initial-scale=1.0'
    ].reject(&:blank?).first
  end
end

#page_descriptionObject



38
39
40
41
42
43
44
45
46
47
48
# File 'app/helpers/meta_helper.rb', line 38

def page_description
  @_page_description ||= begin
    description = [
      content_for(:page_description),
      @page_description,
      build_page_description_from_record,
      site_description
    ].reject(&:blank?).first.try(:squish)
    stripdown(description).squish
  end
end


59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
# File 'app/helpers/meta_helper.rb', line 59

def page_featured_image
  @_page_featured_image ||= begin
    image = [
      content_for(:page_featured_image),
      @page_featured_image,
      build_page_featured_image_from_record,
      site_featured_image
    ].reject(&:blank?).first

    if image.respond_to?(:attachment)
      image = image.attachment
    end

    image
  end
end


123
124
125
126
127
128
# File 'app/helpers/meta_helper.rb', line 123

def page_featured_image_alt
  @_page_featured_image_alt ||= begin
    return unless page_featured_image.is_a?(Paperclip::Attachment)
    page_featured_image.try(:instance).try(:alternative_text)
  end
end


107
108
109
110
111
112
113
114
# File 'app/helpers/meta_helper.rb', line 107

def page_featured_image_height
  @_page_featured_image_height ||= begin
    return unless page_featured_image.is_a?(Paperclip::Attachment)
    @page_featured_image_height ||
      page_featured_image.instance.try(:dimensions).try(:[], :height) ||
      page_featured_image.instance.try(:attachment_height)
  end
end


116
117
118
119
120
121
# File 'app/helpers/meta_helper.rb', line 116

def page_featured_image_type
  @_page_featured_image_type ||= begin
    return unless page_featured_image.is_a?(Paperclip::Attachment)
    page_featured_image.try(:attachment_content_type)
  end
end


76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
# File 'app/helpers/meta_helper.rb', line 76

def page_featured_image_url
  begin
    @_page_featured_image_url ||= begin
      if page_featured_image.is_a?(String)
        url = page_featured_image
      end

      if page_featured_image.is_a?(Paperclip::Attachment)
        if page_featured_image.options[:styles].keys.include?(:large)
          style = :large
        else
          style = page_featured_image.options[:styles].keys.last
        end
        url = page_featured_image.url(style)
      end

      url
    end
  rescue Exception => e
  end
end


98
99
100
101
102
103
104
105
# File 'app/helpers/meta_helper.rb', line 98

def page_featured_image_width
  @_page_featured_image_width ||= begin
    return unless page_featured_image.is_a?(Paperclip::Attachment)
    @page_featured_image_width ||
      page_featured_image.instance.try(:dimensions).try(:[], :width) ||
      page_featured_image.instance.try(:attachment_width)
  end
end

#page_keywordsObject



50
51
52
53
54
55
56
57
# File 'app/helpers/meta_helper.rb', line 50

def page_keywords
  @_page_keywords ||= begin
    [
      content_for(:page_keywords),
      Setting.for('page_keywords')
    ].reject(&:blank?).first.try(:squish)
  end
end

#page_titleObject



18
19
20
21
22
23
24
25
26
27
28
29
# File 'app/helpers/meta_helper.rb', line 18

def page_title
  @_page_title ||= begin
    return if @disable_page_title.present?
    title = [
      content_for(:page_title),
      @page_title,
      build_page_title_from_record,
      build_page_title_from_controller
    ].reject(&:blank?).first
    stripdown(title).squish
  end
end

#site_descriptionObject



130
131
132
133
134
# File 'app/helpers/meta_helper.rb', line 130

def site_description
  @_site_description ||= begin
    (Setting.for('description') || default_site_description).try(:squish)
  end
end


136
137
138
139
140
# File 'app/helpers/meta_helper.rb', line 136

def site_featured_image
  @_site_featured_image ||= begin
    Setting.for('featured_image')
  end
end

#site_titleObject



31
32
33
34
35
36
# File 'app/helpers/meta_helper.rb', line 31

def site_title
  @_site_title ||= begin
    title = Setting.for('site_title') || default_site_title
    stripdown(title).squish
  end
end