Using Google Analytics for Email Click Tracking and Open Rate Tracking in Ruby on Rails

Requirement

  1. 每個連結的點擊數

  2. 開信率

Google Analytics

這是一個電子報,基本上屬於一種廣告!

那GA怎麼那麼厲害知道誰點了什麼?

該不會Google 大神,連Email也滲透?!

ps. 我猜他應該也差不多都知道我們在Email上的一舉一動,只要你用Gmail…

那GA要怎麼紀錄?

基本上就是將連結網址帶上一些”參數”,當使用者點了這個連結之後,就你就會被帶到那個連結網址,這時候那個網站一定有埋GA的javascript ,這就是他的Key~ GA透過js爬到你的網址,當他發現你有帶某些參數,他就知道你是從哪裡來的!

Read on →

[Ruby on Rails] Model Version Control Using Papertrail

Why use papertrail ?

ruby toolbox - active record versioning

Step1. Add lib

Gemfile

gem 'paper_trail', '~> 3.0.6'

Step2. create a migration

On Terminal

bundle exec rails generate paper_trail:install

他會建立,一個叫做versions的表

Step3. migrate

bundle exec rake db:migrate

Step4. Done

has_paper_trail 加上你想要追蹤的model

應用部分

若是想要不同model使用不同追蹤table?

假設我想要product有自己的versions表

  • Step1.

      rails g model product_version 
    
  • 貼上

      class CreateProductVersions < ActiveRecord::Migration
        def change
          create_table :product_versions do |t|
            t.string   :item_type, :null => false
            t.integer  :item_id,   :null => false
            t.string   :event,     :null => false
            t.string   :whodunnit
            t.text     :object
            t.datetime :created_at
            # t.string   :author_username 如果你需要自訂一些欄位讓他記錄,也可以在migration這邊加
          end
          add_index :product_versions, [:item_type, :item_id]
          end
        end
      end
    

ps. 這就是他本身內建會產生的欄位,只是我們手動把它copy一份出來

  • 別忘了

      bundle exec rake db:migrate
    
  • 改model ProductVersion

      class ProductVersion < PaperTrail::Version
        self.table_name = :product_versions
      end
    
  • 改model Product

      class Product < ActiveRecord::Base
          ...
          has_paper_trail class_name: 'ProductVersion'
          ...
      end
    

若是想要知道誰動了資料?

假設你有使用devise,然後是寫在後台

請加在 controller/admin/admin_controller.rb

def user_for_paper_trail
    admin_signed_in? ? current_admin.email : 'System'
end

假使你在前台,你可能需要這樣寫

def user_for_paper_trail
    user_signed_in? ? current_user.email : 'Public User'
end

若某個動作不想被追蹤

@product.without_versioning do
  @product.update_attributes :created_at => Time.now
end

若要刪除某個versions從哪天到某天

方法一:下SQL

delete from versions where created_at < 2014-01-01;

方法二:在rails c底下

PaperTrail::Version.delete_all ["created_at < ?", 1.year.ago]
Comments

[HowTo] Get Google Analytics Engagement Using R

every months google analytic engagement(pageviews X session Duration) in 2014 using R

使用者在網站上的參與程度,是我一直滿好奇的指標!

在GA裡,網站參與度,如下圖

“google

這系列的文章,我的target是 我想知道今年(2014)整體使用者參與度的變化與趨勢

此篇文章是focus 在如何透過R抓取資料並分析成和 GA view一樣的資料!

之後,再看看可以看到什麼樣比較有意義的資料~

let’s go !

Read on →
Comments

[HOWTO]- 立馬拋棄Excel!利用R,取得Google Analytics的資料 -以使用者流量的時間畫heatmap為example

學習一個東西,最快的方式,就是….

just do it !

由於我想要成為一個酷炫的資料科學家!

不學習R這樣對嗎~

既然要學習R,那從每週的Google Analytics開始著手!

traffic heatmap using R (RGoogleAnalytics)

Read on →
Comments

Google Analytics - Goal and Funnel

屬於四大分類下的……..

Audience(目標對象)

Acquistion(攬客)

Behavior(行為)

Conversions(轉換)

一樣先來看看GA怎麼說

Read on →
Comments

Google Analytics - Cross Device Tracking in Ruby on Rails

首先,先來看一下google 的說明

Read on →
Google Analytics Alternative