effective_pages 3.4.9 → 3.4.11
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +25 -0
- data/app/assets/config/effective_pages_manifest.js +1 -0
- data/app/assets/javascripts/effective_pages/google_analytics.js +13 -0
- data/app/assets/javascripts/effective_pages.js +1 -0
- data/app/helpers/effective_pages_helper.rb +9 -0
- data/app/views/layouts/_google_analytics.html.erb +7 -0
- data/config/effective_pages.rb +3 -0
- data/lib/effective_pages/version.rb +1 -1
- data/lib/effective_pages.rb +1 -1
- metadata +6 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 13324875d7eed671ec3197d639c43aad04f24751261d2c6f2b04e3d183a95c1b
|
4
|
+
data.tar.gz: 707bc904234f37b21b88ea6ed3ba5d58fb4d3f2978012837c66a3dfbc2072b65
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 1431e378f871945a3ee1be9a87c3eea61b1b2f03724257df9f5d9feba7a1232f2ab5bfb7a66038fec9c6342b7e44919ad67e35f9be899f1547ba5783174e2fff
|
7
|
+
data.tar.gz: 6259af43261f9822804dea61faffedb17adf53a967078946e6465800bd8b7771224b29789bba8dba75c93fa3e1cedf7e6dbdb050ad63af785b21cc090e20686c
|
data/README.md
CHANGED
@@ -157,6 +157,31 @@ This provides a mechanism to easily target CSS styles for specific pages.
|
|
157
157
|
|
158
158
|
This helper is entirely optional and in no way required for effective_pages to work.
|
159
159
|
|
160
|
+
### Google Analytics GTag Script Helper
|
161
|
+
|
162
|
+
Only works with Turbolinks.
|
163
|
+
|
164
|
+
Include the effective_pages.js javascript file in your asset pipeline.
|
165
|
+
|
166
|
+
```
|
167
|
+
//= require effective_pages
|
168
|
+
```
|
169
|
+
|
170
|
+
Add the following include your `<head>` tag:
|
171
|
+
|
172
|
+
```haml
|
173
|
+
%head
|
174
|
+
= effective_pages_google_analytics
|
175
|
+
```
|
176
|
+
|
177
|
+
Set the GA4 code in your `config/initializers/effective_pages.rb` as so:
|
178
|
+
|
179
|
+
```
|
180
|
+
config.google_analytics_code = 'G-1234567890'
|
181
|
+
```
|
182
|
+
|
183
|
+
This will render the google analytics script tags when running in production mode.
|
184
|
+
|
160
185
|
### Permissions
|
161
186
|
|
162
187
|
When creating a Page, if you've also installed the [effective_roles](https://github.com/code-and-effect/effective_roles) gem, you will be able to configure user access on a per-page basis.
|
@@ -0,0 +1 @@
|
|
1
|
+
//= link_directory ../javascripts .js
|
@@ -0,0 +1,13 @@
|
|
1
|
+
// Add Google Analytics Code
|
2
|
+
// Supports Turbolinks and Turbo
|
3
|
+
document.addEventListener('turbolinks:load', function(event){
|
4
|
+
if(typeof(gtag) != 'function') { return }
|
5
|
+
|
6
|
+
var code = $('head').find('script[data-gtag-code]').first().data('gtag-code');
|
7
|
+
if(typeof(code) == undefined) { return }
|
8
|
+
|
9
|
+
gtag('config', code, {
|
10
|
+
'page_title' : document.title,
|
11
|
+
'page_path': location.href.replace(location.origin, "")
|
12
|
+
});
|
13
|
+
})
|
@@ -0,0 +1 @@
|
|
1
|
+
//= require_tree ./effective_pages
|
@@ -88,6 +88,15 @@ module EffectivePagesHelper
|
|
88
88
|
@effective_pages_og_type || 'website'
|
89
89
|
end
|
90
90
|
|
91
|
+
def effective_pages_google_analytics
|
92
|
+
return unless Rails.env.production?
|
93
|
+
|
94
|
+
code = EffectivePages.google_analytics_code
|
95
|
+
return unless code.present?
|
96
|
+
|
97
|
+
render('layouts/google_analytics', code: code)
|
98
|
+
end
|
99
|
+
|
91
100
|
def application_root_to_effective_pages_slug
|
92
101
|
Rails.application.routes.routes.find { |r| r.name == 'root' && r.defaults[:controller] == 'Effective::Pages' && r.defaults[:action] == 'show' }.defaults[:id] rescue nil
|
93
102
|
end
|
@@ -0,0 +1,7 @@
|
|
1
|
+
<!-- Google tag (gtag.js) -->
|
2
|
+
<script async src="https://www.googletagmanager.com/gtag/js?id=<%= code %>"></script>
|
3
|
+
<script data-gtag-code="<%= code %>">
|
4
|
+
window.dataLayer = window.dataLayer || [];
|
5
|
+
function gtag(){dataLayer.push(arguments);}
|
6
|
+
gtag('js', new Date());
|
7
|
+
</script>
|
data/config/effective_pages.rb
CHANGED
@@ -47,6 +47,9 @@ EffectivePages.setup do |config|
|
|
47
47
|
config.silence_missing_meta_description_warnings = false
|
48
48
|
config.silence_missing_canonical_url_warnings = false
|
49
49
|
|
50
|
+
# Google Tag / Google Analytics 4 code
|
51
|
+
# config.google_analytics_code = ''
|
52
|
+
|
50
53
|
# Display the effective roles 'choose roles' input when an admin creates a new post
|
51
54
|
config.use_effective_roles = false
|
52
55
|
|
data/lib/effective_pages.rb
CHANGED
@@ -10,7 +10,7 @@ module EffectivePages
|
|
10
10
|
:pages_table_name, :page_sections_table_name, :page_banners_table_name, :carousel_items_table_name,
|
11
11
|
:pages_path, :excluded_pages, :layouts_path, :excluded_layouts,
|
12
12
|
:site_og_image, :site_og_image_width, :site_og_image_height,
|
13
|
-
:site_title, :site_title_suffix, :fallback_meta_description,
|
13
|
+
:site_title, :site_title_suffix, :fallback_meta_description, :google_analytics_code,
|
14
14
|
:silence_missing_page_title_warnings, :silence_missing_meta_description_warnings, :silence_missing_canonical_url_warnings,
|
15
15
|
:use_effective_roles, :layout, :max_menu_depth, :banners_hint_text, :carousels_hint_text, :banners_force_randomize,
|
16
16
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: effective_pages
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.4.
|
4
|
+
version: 3.4.11
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Code and Effect
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-03-
|
11
|
+
date: 2023-03-20 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|
@@ -75,6 +75,9 @@ extra_rdoc_files: []
|
|
75
75
|
files:
|
76
76
|
- MIT-LICENSE
|
77
77
|
- README.md
|
78
|
+
- app/assets/config/effective_pages_manifest.js
|
79
|
+
- app/assets/javascripts/effective_pages.js
|
80
|
+
- app/assets/javascripts/effective_pages/google_analytics.js
|
78
81
|
- app/controllers/admin/carousel_items_controller.rb
|
79
82
|
- app/controllers/admin/menus_controller.rb
|
80
83
|
- app/controllers/admin/page_banners_controller.rb
|
@@ -112,6 +115,7 @@ files:
|
|
112
115
|
- app/views/effective/carousels/_carousel.html.haml
|
113
116
|
- app/views/effective/pages/_menu.html.haml
|
114
117
|
- app/views/effective/pages/_page_menu.html.haml
|
118
|
+
- app/views/layouts/_google_analytics.html.erb
|
115
119
|
- config/effective_pages.rb
|
116
120
|
- config/locales/effective_pages.en.yml
|
117
121
|
- config/routes.rb
|