scrivito_seo_page_extender 0.90.0 → 0.91.0.rc1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +146 -0
- data/Rakefile +0 -5
- data/app/concerns/open_graph_extender.rb +42 -10
- data/app/views/seo_page_extender/_meta_attribute.html.erb +1 -1
- data/app/views/seo_page_extender/_meta_attribute_open_graph.html.erb +11 -0
- data/app/views/seo_page_extender/_meta_attribute_open_graph_array.html.erb +13 -0
- data/app/views/seo_page_extender/_open_graph.html.erb +46 -11
- data/app/views/seo_page_extender/_open_graph_attribute.html.erb +7 -0
- data/app/views/seo_page_extender/_open_graph_details.html.erb +11 -42
- data/app/views/seo_page_extender/open_graph/_article.html.erb +19 -0
- data/app/views/seo_page_extender/open_graph/_base.html.erb +36 -0
- data/app/views/seo_page_extender/open_graph/_book.html.erb +15 -0
- data/app/views/seo_page_extender/open_graph/_music.html.erb +19 -0
- data/app/views/seo_page_extender/open_graph/_profile.html.erb +15 -0
- data/app/views/seo_page_extender/open_graph/_video.html.erb +31 -0
- data/lib/scrivito_seo_page_extender/version.rb +1 -1
- metadata +14 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 6b2ba416f9b3d0a48c13f1cc3b56209edd88fa1d
|
4
|
+
data.tar.gz: c1c932bf04bf85949ed314cd1649111ae4485e94
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f5b65e248df1de01a112173abe01410a0ded1bd798e8a49e27a9c2e768416f6c6f79f24990b30f984675042acee145bff5fbfd9509588c8cdc8e311da17bec38
|
7
|
+
data.tar.gz: 85918b71fbda001a846cbc7eb0fa6e5071627b8e6acbdf06676ace9242fc40669ad1a0672935e3cdf9057c23468fcd229ee5d345874bf718d45da199a204b57b
|
data/README.md
ADDED
@@ -0,0 +1,146 @@
|
|
1
|
+
# ScrivitoSeoPageExtender
|
2
|
+
|
3
|
+
Includes attributes for defining meta tags as well as Open Graph and Twitter cards.
|
4
|
+
|
5
|
+
## Installation
|
6
|
+
|
7
|
+
Add the gem to your Gemfile:
|
8
|
+
|
9
|
+
gem 'scrivito_seo_page_extender'
|
10
|
+
|
11
|
+
## Usage
|
12
|
+
|
13
|
+
### Extend your models
|
14
|
+
|
15
|
+
Include the mixins you want to use in your individual page models:
|
16
|
+
|
17
|
+
```ruby
|
18
|
+
class Page < Obj
|
19
|
+
include MetaDataExtender
|
20
|
+
include OpenGraphExtender
|
21
|
+
include TwitterCardsExtender
|
22
|
+
include SitemapExtender
|
23
|
+
end
|
24
|
+
```
|
25
|
+
|
26
|
+
### Extend your details view
|
27
|
+
|
28
|
+
```ruby
|
29
|
+
<%= render 'seo_page_extender/meta_data_details', obj: @obj %>
|
30
|
+
<%= render 'seo_page_extender/open_graph_details', obj: @obj %>
|
31
|
+
<%= render 'seo_page_extender/twitter_cards_details', obj: @obj %>
|
32
|
+
<%= render 'seo_page_extender/sitemap_details', obj: @obj %>
|
33
|
+
```
|
34
|
+
|
35
|
+
### Partial Use of all atributes
|
36
|
+
|
37
|
+
Open Graph includes attributes which are not required everywhere. E.g. Video, Book or Music. In your details view, you can render the partials for the required attributes grouped by the types of Open Graph:
|
38
|
+
|
39
|
+
```ruby
|
40
|
+
<%= render 'seo_page_extender/open_graph/base', obj: @obj %>
|
41
|
+
<%= render 'seo_page_extender/open_graph/article', obj: @obj %>
|
42
|
+
<%= render 'seo_page_extender/open_graph/books', obj: @obj %>
|
43
|
+
<%= render 'seo_page_extender/open_graph/profile', obj: @obj %>
|
44
|
+
<%= render 'seo_page_extender/open_graph/music', obj: @obj %>
|
45
|
+
<%= render 'seo_page_extender/open_graph/video', obj: @obj %>
|
46
|
+
```
|
47
|
+
|
48
|
+
Some pages has a specific `site_name`. You can define a method in your obj.rb to set one:
|
49
|
+
|
50
|
+
```ruby
|
51
|
+
def open_graph_site_name
|
52
|
+
return 'my_page_name' # e.g. imdb
|
53
|
+
end
|
54
|
+
```
|
55
|
+
|
56
|
+
## Extend your application layout
|
57
|
+
|
58
|
+
In your application layout, render the partials in the `head` tag:
|
59
|
+
|
60
|
+
```html
|
61
|
+
<head>
|
62
|
+
...
|
63
|
+
<%= render 'seo_page_extender/meta_data' %>
|
64
|
+
<%= render 'seo_page_extender/twitter_cards' %>
|
65
|
+
<%= render 'seo_page_extender/open_graph' %>
|
66
|
+
...
|
67
|
+
</head>
|
68
|
+
```
|
69
|
+
|
70
|
+
### Setting defaults
|
71
|
+
|
72
|
+
The widget does not set any defaults for meta attributes. If you want to, you can do this easily using the `default_for` method:
|
73
|
+
|
74
|
+
```ruby
|
75
|
+
def Page < Obj
|
76
|
+
include MetaDataExtender
|
77
|
+
|
78
|
+
default_for :meta_robots do |attribute, scrivito_user|
|
79
|
+
["noindex", "nofollow"]
|
80
|
+
end
|
81
|
+
end
|
82
|
+
```
|
83
|
+
|
84
|
+
## Futher functionality
|
85
|
+
|
86
|
+
### Sitemap attributes
|
87
|
+
|
88
|
+
The SEO sitemap attributes can be used in your sitemap.xml if you have one.
|
89
|
+
|
90
|
+
```ruby
|
91
|
+
PagesInSitemap.each |page|
|
92
|
+
...
|
93
|
+
<%= page.sitemap_frequency %>
|
94
|
+
<%= page.sitemap_priority %>
|
95
|
+
...
|
96
|
+
end
|
97
|
+
```
|
98
|
+
|
99
|
+
### Word density
|
100
|
+
|
101
|
+
To have the word density table displayed, render the partial for it. The type of the attribute whose value should be analyzed can be `widgetlist`, `string` or `html`:
|
102
|
+
|
103
|
+
```xml
|
104
|
+
<%= render 'seo_page_extender/word_density', obj: @obj, attribute: :attribute %>
|
105
|
+
```
|
106
|
+
|
107
|
+
The gem includes a stop word list for English. If you require different stop words or stop words for different or additional languages, you can provide a method for retrieving the list in your `obj.rb`:
|
108
|
+
|
109
|
+
```ruby
|
110
|
+
# in obj.rb
|
111
|
+
def self.stop_word_list
|
112
|
+
if language == :de
|
113
|
+
["wort1","wort2","wort3","wort4",...]
|
114
|
+
else
|
115
|
+
default_stop_word_list
|
116
|
+
end
|
117
|
+
end
|
118
|
+
```
|
119
|
+
|
120
|
+
The word density plugin lowercases your content. Therefore, the words in your stop word list need to be in lower case.
|
121
|
+
|
122
|
+
### Google analytics
|
123
|
+
|
124
|
+
The partial that adds Google Analytics to your view can be rendered like this:
|
125
|
+
|
126
|
+
```xml
|
127
|
+
<%= render 'seo_page_extender/google_analytics', key: 'your-googleAnalytics-key' %>
|
128
|
+
```
|
129
|
+
|
130
|
+
`anonymize-ip` has been set to `true` in this script.
|
131
|
+
|
132
|
+
### Canonical link
|
133
|
+
|
134
|
+
By default, the canonical link is determined using `scrivito_path`.
|
135
|
+
|
136
|
+
```xml
|
137
|
+
<%= render 'seo_page_extender/canonical_link' %>
|
138
|
+
```
|
139
|
+
|
140
|
+
If you need different canonical links, you can add the `meta_canonical` attribute to your object classes and set the attribute values of the CMS objects to the desired link.
|
141
|
+
|
142
|
+
```ruby
|
143
|
+
class MyObj < Obj
|
144
|
+
attribute :meta_canonical, :string
|
145
|
+
end
|
146
|
+
```
|
data/Rakefile
CHANGED
@@ -1,15 +1,47 @@
|
|
1
1
|
module OpenGraphExtender
|
2
2
|
def self.included(base)
|
3
|
-
base.attribute :
|
4
|
-
base.attribute :
|
3
|
+
base.attribute :og_title, :string
|
4
|
+
base.attribute :og_type, :enum, values: ['website','article','book','profile','music.song','music.album','music.playlist','music.radiostation','video.movie','video.episode','video.tv_show','video.other']
|
5
|
+
base.attribute :og_locale, :string
|
6
|
+
base.attribute :og_locale_alternate, :stringlist
|
5
7
|
base.attribute :og_description, :string
|
6
|
-
base.attribute :
|
7
|
-
|
8
|
+
base.attribute :og_determiner, :string
|
9
|
+
|
8
10
|
base.attribute :og_image, :reference
|
9
|
-
base.attribute :
|
10
|
-
base.attribute :
|
11
|
-
|
12
|
-
base.attribute :
|
13
|
-
base.attribute :
|
11
|
+
base.attribute :og_audio, :reference
|
12
|
+
base.attribute :og_video, :reference
|
13
|
+
|
14
|
+
base.attribute :article_published_time, :date
|
15
|
+
base.attribute :article_expiration_time, :date
|
16
|
+
base.attribute :article_author, :stringlist
|
17
|
+
base.attribute :article_section, :string
|
18
|
+
base.attribute :article_tag, :stringlist
|
19
|
+
|
20
|
+
base.attribute :book_author, :stringlist
|
21
|
+
base.attribute :book_isbn, :string
|
22
|
+
base.attribute :book_release_date, :date
|
23
|
+
base.attribute :book_tag, :stringlist
|
24
|
+
|
25
|
+
base.attribute :profile_first_name, :string
|
26
|
+
base.attribute :profile_last_name, :string
|
27
|
+
base.attribute :profile_username, :string
|
28
|
+
base.attribute :profile_gender, :enum, values: ['male','female']
|
29
|
+
|
30
|
+
# Video Attributes
|
31
|
+
base.attribute :video_actor, :stringlist
|
32
|
+
base.attribute :video_actor_role, :string
|
33
|
+
base.attribute :video_director, :stringlist
|
34
|
+
base.attribute :video_writer, :stringlist
|
35
|
+
base.attribute :video_duration, :string
|
36
|
+
base.attribute :video_release_date, :date
|
37
|
+
base.attribute :video_tag, :stringlist
|
38
|
+
base.attribute :video_series, :string
|
39
|
+
|
40
|
+
# Music Attributes
|
41
|
+
base.attribute :music_duration, :string
|
42
|
+
base.attribute :music_musician, :stringlist
|
43
|
+
base.attribute :music_album, :stringlist
|
44
|
+
base.attribute :music_creator, :string
|
45
|
+
base.attribute :music_song, :stringlist
|
14
46
|
end
|
15
|
-
end
|
47
|
+
end
|
@@ -0,0 +1,11 @@
|
|
1
|
+
<% if @obj.respond_to?(attribute) && !@obj.send(attribute).blank? %>
|
2
|
+
<% if @obj[attribute].respond_to?('binary?') && @obj[attribute].binary? %>
|
3
|
+
<meta content="<%= scrivito_path(@obj[attribute]) %>" property="<%= name %>"/>
|
4
|
+
<% if @obj.is_a? Image %>
|
5
|
+
<meta content="<%= obj.width %>" property="og:image:width"/>
|
6
|
+
<meta content="<%= obj.height %>" property="og:image:height"/>
|
7
|
+
<% end %>
|
8
|
+
<% else %>
|
9
|
+
<meta content="<%= @obj.send(attribute) %>" property="<%= name %>"/>
|
10
|
+
<% end %>
|
11
|
+
<% end %>
|
@@ -0,0 +1,13 @@
|
|
1
|
+
<% if @obj.respond_to?(attribute) && !@obj.send(attribute).blank? %>
|
2
|
+
<% @obj[attribute].each do |obj| %>
|
3
|
+
<% if !obj.is_a? String %>
|
4
|
+
<meta content="<%= scrivito_path(obj) %>" property="<%= name %>"/>
|
5
|
+
<% if obj.is_a? Image %>
|
6
|
+
<meta content="<%= obj.width %>" property="og:image:width"/>
|
7
|
+
<meta content="<%= obj.height %>" property="og:image:height"/>
|
8
|
+
<% end %>
|
9
|
+
<% else %>
|
10
|
+
<meta content="<%= obj %>" property="<%= name %>"/>
|
11
|
+
<% end %>
|
12
|
+
<% end %>
|
13
|
+
<% end %>
|
@@ -1,11 +1,46 @@
|
|
1
|
-
<%= render "seo_page_extender/
|
2
|
-
<%= render "seo_page_extender/
|
3
|
-
<%= render "seo_page_extender/
|
4
|
-
<%= render "seo_page_extender/
|
5
|
-
<%= render "seo_page_extender/
|
6
|
-
<%= render "seo_page_extender/
|
7
|
-
<%= render "seo_page_extender/
|
8
|
-
<%= render "seo_page_extender/
|
9
|
-
<%= render "seo_page_extender/
|
10
|
-
|
11
|
-
<%= render "seo_page_extender/
|
1
|
+
<%= render "seo_page_extender/meta_attribute_open_graph", attribute: "og_title", name: "og:title" -%>
|
2
|
+
<%= render "seo_page_extender/meta_attribute_open_graph", attribute: "og_type", name: "og:type" -%>
|
3
|
+
<%= render "seo_page_extender/meta_attribute_open_graph", attribute: "og_locale", name: "og:locale" -%>
|
4
|
+
<%= render "seo_page_extender/meta_attribute_open_graph_array", attribute: "og_locale_alternate", name: "og:locale:alternate" -%>
|
5
|
+
<%= render "seo_page_extender/meta_attribute_open_graph", attribute: "og_description", name: "og:description" -%>
|
6
|
+
<%= render "seo_page_extender/meta_attribute_open_graph", attribute: "og_determiner", name: "og:determiner" -%>
|
7
|
+
<%= render "seo_page_extender/meta_attribute_open_graph", attribute: "og_image", name: "og:image" -%>
|
8
|
+
<%= render "seo_page_extender/meta_attribute_open_graph", attribute: "og_audio", name: "og:audio" -%>
|
9
|
+
<%= render "seo_page_extender/meta_attribute_open_graph", attribute: "og_video", name: "og:video" -%>
|
10
|
+
|
11
|
+
<%= render "seo_page_extender/meta_attribute_open_graph", attribute: "article_published_time", name: "article:published_time" -%>
|
12
|
+
<%= render "seo_page_extender/meta_attribute_open_graph", attribute: "article_expiration_time", name: "article:expiration_time" -%>
|
13
|
+
<%= render "seo_page_extender/meta_attribute_open_graph_array", attribute: "article_author", name: "article:author" -%>
|
14
|
+
<%= render "seo_page_extender/meta_attribute_open_graph", attribute: "article_section", name: "article:section" -%>
|
15
|
+
<%= render "seo_page_extender/meta_attribute_open_graph_array", attribute: "article_tag", name: "article:tag" -%>
|
16
|
+
|
17
|
+
<%= render "seo_page_extender/meta_attribute_open_graph_array", attribute: "book_author", name: "book:author" -%>
|
18
|
+
<%= render "seo_page_extender/meta_attribute_open_graph", attribute: "book_isbn", name: "book:isbn" -%>
|
19
|
+
<%= render "seo_page_extender/meta_attribute_open_graph", attribute: "book_release_date", name: "book:release_date" -%>
|
20
|
+
<%= render "seo_page_extender/meta_attribute_open_graph_array", attribute: "book_tag", name: "book:tag" -%>
|
21
|
+
|
22
|
+
<%= render "seo_page_extender/meta_attribute_open_graph", attribute: "profile_first_name", name: "profile:first_name" -%>
|
23
|
+
<%= render "seo_page_extender/meta_attribute_open_graph", attribute: "profile_last_name", name: "profile:last_name" -%>
|
24
|
+
<%= render "seo_page_extender/meta_attribute_open_graph", attribute: "profile_username", name: "profile:username" -%>
|
25
|
+
<%= render "seo_page_extender/meta_attribute_open_graph", attribute: "profile_gender", name: "profile:gender" -%>
|
26
|
+
|
27
|
+
<%= render "seo_page_extender/meta_attribute_open_graph_array", attribute: "video_actor", name: "video:actor" -%>
|
28
|
+
<%= render "seo_page_extender/meta_attribute_open_graph", attribute: "video_actor_role", name: "video:actor:role" -%>
|
29
|
+
<%= render "seo_page_extender/meta_attribute_open_graph_array", attribute: "video_director", name: "video:director" -%>
|
30
|
+
<%= render "seo_page_extender/meta_attribute_open_graph_array", attribute: "video_writer", name: "video:witer" -%>
|
31
|
+
<%= render "seo_page_extender/meta_attribute_open_graph", attribute: "video_duration", name: "video:duration" -%>
|
32
|
+
<%= render "seo_page_extender/meta_attribute_open_graph", attribute: "video_release_date", name: "video:release_date" -%>
|
33
|
+
<%= render "seo_page_extender/meta_attribute_open_graph_array", attribute: "video_tag", name: "video:tag" -%>
|
34
|
+
<%= render "seo_page_extender/meta_attribute_open_graph", attribute: "video_series", name: "video:series" -%>
|
35
|
+
|
36
|
+
<%= render "seo_page_extender/meta_attribute_open_graph", attribute: "music_duration", name: "music:duration" -%>
|
37
|
+
<%= render "seo_page_extender/meta_attribute_open_graph_array", attribute: "music_musician", name: "music:musician" -%>
|
38
|
+
<%= render "seo_page_extender/meta_attribute_open_graph_array", attribute: "music_album", name: "music:album" -%>
|
39
|
+
<%= render "seo_page_extender/meta_attribute_open_graph", attribute: "music_creator", name: "music:creator" -%>
|
40
|
+
<%= render "seo_page_extender/meta_attribute_open_graph_array", attribute: "music_song", name: "music:song" -%>
|
41
|
+
|
42
|
+
<meta content="<%= canonical_link(@obj) %>" property="og:url"/>
|
43
|
+
|
44
|
+
<% if Obj.respond_to? 'open_graph_site_name' %>
|
45
|
+
<meta content="<%= Obj.open_graph_site_name %>" property="og:sitename"/>
|
46
|
+
<% end %>
|
@@ -0,0 +1,7 @@
|
|
1
|
+
<% if @obj.respond_to?(attribute) && !@obj.send(attribute).blank? %>
|
2
|
+
<% if name[/image\d?$/] %>
|
3
|
+
<meta content="<%= scrivito_path(@obj[attribute]) %>" name="<%= name %>"/>
|
4
|
+
<% else %>
|
5
|
+
<meta content="<%= @obj.send(attribute).tr("\u00a0", ' ').strip %>" property="<%= name %>"/>
|
6
|
+
<% end %>
|
7
|
+
<% end %>
|
@@ -1,47 +1,16 @@
|
|
1
|
-
<%=
|
2
|
-
<%= scrivito_tag(:div, obj, :og_title) %>
|
3
|
-
<% end %>
|
1
|
+
<%= render 'seo_page_extender/open_graph/base', obj: obj %>
|
4
2
|
|
5
|
-
|
6
|
-
|
7
|
-
<% end %>
|
3
|
+
<h2>Article</h2>
|
4
|
+
<%= render 'seo_page_extender/open_graph/article', obj: obj %>
|
8
5
|
|
9
|
-
|
10
|
-
|
11
|
-
<% end %>
|
6
|
+
<h2>Book</h2>
|
7
|
+
<%= render 'seo_page_extender/open_graph/book', obj: obj %>
|
12
8
|
|
13
|
-
|
14
|
-
|
15
|
-
<% end %>
|
9
|
+
<h2>Music</h2>
|
10
|
+
<%= render 'seo_page_extender/open_graph/music', obj: obj %>
|
16
11
|
|
17
|
-
|
18
|
-
|
19
|
-
<% end %>
|
12
|
+
<h2>Profile</h2>
|
13
|
+
<%= render 'seo_page_extender/open_graph/profile', obj: obj %>
|
20
14
|
|
21
|
-
|
22
|
-
|
23
|
-
<% end %>
|
24
|
-
|
25
|
-
<%= scrivito_details_for 'Director (For video)' do %>
|
26
|
-
<%= scrivito_tag(:div, obj, :og_director) %>
|
27
|
-
<% end %>
|
28
|
-
|
29
|
-
<%= scrivito_details_for 'Duration (For video)' do %>
|
30
|
-
<%= scrivito_tag(:div, obj, :og_duration) %>
|
31
|
-
<% end %>
|
32
|
-
|
33
|
-
<%= scrivito_details_for 'Release Date' do %>
|
34
|
-
<%= scrivito_tag(:div, obj, :og_release_date) %>
|
35
|
-
<% end %>
|
36
|
-
|
37
|
-
<%= scrivito_details_for 'Author (For book)' do %>
|
38
|
-
<%= scrivito_tag(:div, obj, :og_author) %>
|
39
|
-
<% end %>
|
40
|
-
|
41
|
-
<%= scrivito_details_for 'Section' do %>
|
42
|
-
<%= scrivito_tag(:div, obj, :og_section) %>
|
43
|
-
<% end %>
|
44
|
-
|
45
|
-
<div class="alert alert-info">
|
46
|
-
<a href="http://ogp.me/" target="_blank">More about Open Graph</a>.
|
47
|
-
</div>
|
15
|
+
<h2>Video</h2>
|
16
|
+
<%= render 'seo_page_extender/open_graph/video', obj: obj %>
|
@@ -0,0 +1,19 @@
|
|
1
|
+
<%= scrivito_details_for 'Open Graph Published' do %>
|
2
|
+
<%= scrivito_tag :div, obj, :article_published_time %>
|
3
|
+
<% end %>
|
4
|
+
|
5
|
+
<%= scrivito_details_for 'Open Graph Expiration' do %>
|
6
|
+
<%= scrivito_tag :div, obj, :article_expiration_time %>
|
7
|
+
<% end %>
|
8
|
+
|
9
|
+
<%= scrivito_details_for 'Open Graph Author' do %>
|
10
|
+
<%= scrivito_tag :div, obj, :article_author %>
|
11
|
+
<% end %>
|
12
|
+
|
13
|
+
<%= scrivito_details_for 'Open Graph Section' do %>
|
14
|
+
<%= scrivito_tag :div, obj, :article_section %>
|
15
|
+
<% end %>
|
16
|
+
|
17
|
+
<%= scrivito_details_for 'Open Graph Tag' do %>
|
18
|
+
<%= scrivito_tag :div, obj, :article_tag %>
|
19
|
+
<% end %>
|
@@ -0,0 +1,36 @@
|
|
1
|
+
<%= scrivito_details_for 'Open Graph Type' do %>
|
2
|
+
<%= scrivito_tag :div, obj, :og_type %>
|
3
|
+
<% end %>
|
4
|
+
|
5
|
+
<%= scrivito_details_for 'Open Graph Title' do %>
|
6
|
+
<%= scrivito_tag :div, obj, :og_title %>
|
7
|
+
<% end %>
|
8
|
+
|
9
|
+
<%= scrivito_details_for 'Open Graph Locale <small>e.g. en_us</small>'.html_safe do %>
|
10
|
+
<%= scrivito_tag :div, obj, :og_locale %>
|
11
|
+
<% end %>
|
12
|
+
|
13
|
+
<%= scrivito_details_for 'Open Graph Locale Alternate' do %>
|
14
|
+
<%= scrivito_tag :div, obj, :og_locale_alternate %>
|
15
|
+
<% end %>
|
16
|
+
|
17
|
+
<%= scrivito_details_for 'Open Graph Description' do %>
|
18
|
+
<%= scrivito_tag :div, obj, :og_description %>
|
19
|
+
<% end %>
|
20
|
+
|
21
|
+
<%= scrivito_details_for 'Open Graph Determiner' do %>
|
22
|
+
<%= scrivito_tag :div, obj, :og_determiner, data: {toggle_button_list: ['a','an','the','','auto']} %>
|
23
|
+
<% end %>
|
24
|
+
|
25
|
+
<%= scrivito_details_for 'Open Graph Image' do %>
|
26
|
+
<%= scrivito_tag :div, obj, :og_image %>
|
27
|
+
<% end %>
|
28
|
+
|
29
|
+
<%= scrivito_details_for 'Open Graph Audio' do %>
|
30
|
+
<%= scrivito_tag :div, obj, :og_audio %>
|
31
|
+
<% end %>
|
32
|
+
|
33
|
+
<%= scrivito_details_for 'Open Graph Video' do %>
|
34
|
+
<%= scrivito_tag :div, obj, :og_video %>
|
35
|
+
<% end %>
|
36
|
+
|
@@ -0,0 +1,15 @@
|
|
1
|
+
<%= scrivito_details_for 'Open Graph Author' do %>
|
2
|
+
<%= scrivito_tag :div, obj, :book_author %>
|
3
|
+
<% end %>
|
4
|
+
|
5
|
+
<%= scrivito_details_for 'Open Graph ISBN' do %>
|
6
|
+
<%= scrivito_tag :div, obj, :book_isbn %>
|
7
|
+
<% end %>
|
8
|
+
|
9
|
+
<%= scrivito_details_for 'Open Graph Release Date' do %>
|
10
|
+
<%= scrivito_tag :div, obj, :book_release_date %>
|
11
|
+
<% end %>
|
12
|
+
|
13
|
+
<%= scrivito_details_for 'Open Graph Tag' do %>
|
14
|
+
<%= scrivito_tag :div, obj, :book_tag %>
|
15
|
+
<% end %>
|
@@ -0,0 +1,19 @@
|
|
1
|
+
<%= scrivito_details_for 'Open Graph Duration' do %>
|
2
|
+
<%= scrivito_tag :div, obj, :music_duration %>
|
3
|
+
<% end %>
|
4
|
+
|
5
|
+
<%= scrivito_details_for 'Open Graph Musican' do %>
|
6
|
+
<%= scrivito_tag :div, obj, :music_musician %>
|
7
|
+
<% end %>
|
8
|
+
|
9
|
+
<%= scrivito_details_for 'Open Graph Album' do %>
|
10
|
+
<%= scrivito_tag :div, obj, :music_album %>
|
11
|
+
<% end %>
|
12
|
+
|
13
|
+
<%= scrivito_details_for 'Open Graph Creator' do %>
|
14
|
+
<%= scrivito_tag :div, obj, :music_creator %>
|
15
|
+
<% end %>
|
16
|
+
|
17
|
+
<%= scrivito_details_for 'Open Graph Song' do %>
|
18
|
+
<%= scrivito_tag :div, obj, :music_song %>
|
19
|
+
<% end %>
|
@@ -0,0 +1,15 @@
|
|
1
|
+
<%= scrivito_details_for 'Open Graph ' do %>
|
2
|
+
<%= scrivito_tag :div, obj, :profile_first_name %>
|
3
|
+
<% end %>
|
4
|
+
|
5
|
+
<%= scrivito_details_for 'Open Graph ' do %>
|
6
|
+
<%= scrivito_tag :div, obj, :profile_last_name %>
|
7
|
+
<% end %>
|
8
|
+
|
9
|
+
<%= scrivito_details_for 'Open Graph ' do %>
|
10
|
+
<%= scrivito_tag :div, obj, :profile_username %>
|
11
|
+
<% end %>
|
12
|
+
|
13
|
+
<%= scrivito_details_for 'Open Graph ' do %>
|
14
|
+
<%= scrivito_tag :div, obj, :profile_gender %>
|
15
|
+
<% end %>
|
@@ -0,0 +1,31 @@
|
|
1
|
+
<%= scrivito_details_for 'Open Graph Actor' do %>
|
2
|
+
<%= scrivito_tag :div, obj, :video_actor %>
|
3
|
+
<% end %>
|
4
|
+
|
5
|
+
<%= scrivito_details_for 'Open Graph Actor Role' do %>
|
6
|
+
<%= scrivito_tag :div, obj, :video_actor_role %>
|
7
|
+
<% end %>
|
8
|
+
|
9
|
+
<%= scrivito_details_for 'Open Graph Director' do %>
|
10
|
+
<%= scrivito_tag :div, obj, :video_director %>
|
11
|
+
<% end %>
|
12
|
+
|
13
|
+
<%= scrivito_details_for 'Open Graph Writer' do %>
|
14
|
+
<%= scrivito_tag :div, obj, :video_writer %>
|
15
|
+
<% end %>
|
16
|
+
|
17
|
+
<%= scrivito_details_for 'Open Graph Duration' do %>
|
18
|
+
<%= scrivito_tag :div, obj, :video_duration %>
|
19
|
+
<% end %>
|
20
|
+
|
21
|
+
<%= scrivito_details_for 'Open Graph Release Date' do %>
|
22
|
+
<%= scrivito_tag :div, obj, :video_release_date %>
|
23
|
+
<% end %>
|
24
|
+
|
25
|
+
<%= scrivito_details_for 'Open Graph Tag' do %>
|
26
|
+
<%= scrivito_tag :div, obj, :video_tag %>
|
27
|
+
<% end %>
|
28
|
+
|
29
|
+
<%= scrivito_details_for 'Open Graph Series' do %>
|
30
|
+
<%= scrivito_tag :div, obj, :video_series %>
|
31
|
+
<% end %>
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: scrivito_seo_page_extender
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.91.0.rc1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Scrivito
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2016-02-18 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -61,6 +61,7 @@ extensions: []
|
|
61
61
|
extra_rdoc_files: []
|
62
62
|
files:
|
63
63
|
- LICENSE
|
64
|
+
- README.md
|
64
65
|
- Rakefile
|
65
66
|
- app/assets/javascripts/scrivito_seo_page_extender.js
|
66
67
|
- app/assets/stylesheets/scrivito_seo_page_extender.css
|
@@ -73,15 +74,24 @@ files:
|
|
73
74
|
- app/views/seo_page_extender/_edit_permalink.html.erb
|
74
75
|
- app/views/seo_page_extender/_google_analytics.html.erb
|
75
76
|
- app/views/seo_page_extender/_meta_attribute.html.erb
|
77
|
+
- app/views/seo_page_extender/_meta_attribute_open_graph.html.erb
|
78
|
+
- app/views/seo_page_extender/_meta_attribute_open_graph_array.html.erb
|
76
79
|
- app/views/seo_page_extender/_meta_data.html.erb
|
77
80
|
- app/views/seo_page_extender/_meta_data_details.html.erb
|
78
81
|
- app/views/seo_page_extender/_open_graph.html.erb
|
82
|
+
- app/views/seo_page_extender/_open_graph_attribute.html.erb
|
79
83
|
- app/views/seo_page_extender/_open_graph_details.html.erb
|
80
84
|
- app/views/seo_page_extender/_sitemap_details.html.erb
|
81
85
|
- app/views/seo_page_extender/_twitter_cards.html.erb
|
82
86
|
- app/views/seo_page_extender/_twitter_cards_details.html.erb
|
83
87
|
- app/views/seo_page_extender/_word_density.html.erb
|
84
88
|
- app/views/seo_page_extender/_word_density_part.html.erb
|
89
|
+
- app/views/seo_page_extender/open_graph/_article.html.erb
|
90
|
+
- app/views/seo_page_extender/open_graph/_base.html.erb
|
91
|
+
- app/views/seo_page_extender/open_graph/_book.html.erb
|
92
|
+
- app/views/seo_page_extender/open_graph/_music.html.erb
|
93
|
+
- app/views/seo_page_extender/open_graph/_profile.html.erb
|
94
|
+
- app/views/seo_page_extender/open_graph/_video.html.erb
|
85
95
|
- lib/scrivito_seo_page_extender.rb
|
86
96
|
- lib/scrivito_seo_page_extender/engine.rb
|
87
97
|
- lib/scrivito_seo_page_extender/version.rb
|
@@ -101,9 +111,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
101
111
|
version: '0'
|
102
112
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
103
113
|
requirements:
|
104
|
-
- - "
|
114
|
+
- - ">"
|
105
115
|
- !ruby/object:Gem::Version
|
106
|
-
version:
|
116
|
+
version: 1.3.1
|
107
117
|
requirements: []
|
108
118
|
rubyforge_project:
|
109
119
|
rubygems_version: 2.4.5
|