IT仕事

バズ部のテーマ xeory base でfacebookの「いいね」のカウント引き継ぐ

投稿日:

会社のサイトで、WordPressでバズ部のテーマ xeory base を使っている。
で、この度、最近、弊社サイトの常時SSL化に向けて準備を進めている。

ところで、サイトをhttps化すると、チビチビ貯めたfacebookの「いいね」のカウントがリセットされるらしい。テストしてみるとまさにその通りになった。

XeoryBaseのテーマは、そのままでは、何らかの対応が必要になる。
で、いろいろ調べたところ、SNS Count Cache というプラグインがいいみたいという記事を多く見かけた。

しかしプラグインをインストールしてみたものの、どうやってxeoryのテーマに組み込んでよいのかわからない(対応テーマなら簡単らしいのでが、あいにく)。
結局、SNS Count Cache は諦めて、以下のやり方にした。

ページの説明で赤で表示されている部分を参考に数か所修正しただけでアッサリOk。

参考:HTTPからHTTPSへの変更時にソーシャルボタンのカウント数を(見た目上)引き継ぐ方法|コラム アユダンテ株式会社

修正箇所は、themes/xeory_base/lib/functions のsocial_btn.phpの一部。以下、長いけど、実際に直した箇所は少ない。

// 非SSL版の自身のURLを取得 $httpurlに格納
// 参考:HTTPからHTTPSへの変更時にソーシャルボタンのカウント数を(見た目上)引き継ぐ方法|コラム アユダンテ株式会社 <http://www.ayudante.jp/column/2015-07-01/17-24/>
$httpurl = "http://" . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI']; // SSL版の自身のURLを取得 $httpsurlに格納
$httpsurl = "https://" . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];

        $like =<<<EOF
    
<li class="bzb-facebook">

<div class="fb-like" data-href="{$httpurl}" data-layout="{$fb_disp_type}" data-action="like" data-show-faces="false"></div>

    </li>

EOF;
      }

      if($show_tweet_button){
        $twitter_disp_type = ($type) ? 'data-count="vertical"' : '';
        $tweet=<<<EOF
    
<li class="bzb-twitter">
      <a href="https://twitter.com/share" class="twitter-share-button" {$twitter_disp_type} data-counturl="{$httpurl}" data-url="{$httspurl}" data-text="{$post_title}">Tweet</a>
      <img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" data-wp-preserve="%3Cscript%3E!function(d%2Cs%2Cid)%7Bvar%20js%2Cfjs%3Dd.getElementsByTagName(s)%5B0%5D%2Cp%3D%2F%5Ehttp%3A%2F.test(d.location)%3F'http'%3A'https'%3Bif(!d.getElementById(id))%7Bjs%3Dd.createElement(s)%3Bjs.id%3Did%3Bjs.async%3Dtrue%3Bjs.src%3Dp%2B'%3A%2F%2Fplatform.twitter.com%2Fwidgets.js'%3Bfjs.parentNode.insertBefore(js%2Cfjs)%3B%7D%7D(document%2C%20'script'%2C%20'twitter-wjs')%3B%3C%2Fscript%3E" data-mce-resize="false" data-mce-placeholder="1" class="mce-object" width="20" height="20" alt="&lt;script&gt;" title="&lt;script&gt;" />
    </li>

EOF;
      }

      if($show_google_button){
        $g_disp_type = ($type) ? 'data-size="tall"' : '';
        $google=<<<EOF
    
<li class="bzb-googleplus">

<div class="g-plusone" data-href="{$httpurl}" {$g_disp_type}></div>

    </li>

最初は、私はPHPコードがほとんどわからない人なので、参考ソースを見ただけで「無理!」と思った。
しかし、変数の使い方が参考サイトのサンプルとxeoryがほとんど同じなので、とても簡単だった。

SNS Count Cache は、インストールはしたが、実際には使わず。
けどもダッシューボードで評価の高い記事が一覧できて便利なので、別の利用価値あるかも。

-IT仕事

執筆者:

関連記事

no image

「良さそう」と思ってもらうには4つのポイント

経営を伸ばす視覚伝達デザインの鉄則 : 第4回 「良さそう」と思ってもらうには4つのポイントが必要 (1) 伝えたい情報が伝わっているか (2) 伝えたい世界観が伝わっているか (3) アイデンティテ …

no image

Excel2007でアドインを作って登録するまでの手順

Googleさまで探してもあまり好みの回答にたどり着かなかったので、自分及び誰かのためになるかと思いメモメモ。 ■1.標準モジュールにアドインにしたいコードを作成する。 以下のコードは、単純に、 「セ …

no image

住所を自動入力するフォーム

以下のリンクを参考に、郵便番号から都道府県と市町村名を自動入力するフォームを作った、とある企業さんのWebサイトにて。 AjaxZip 2.0 – Ajax郵便番号→住所自動入力フォーム( …

no image

Win7初体験・初トラブル

会社の人が初めてWin7入りPCを買ったので例によってトラブルに遭遇した。 ファイルサーバにアクセスしようとすると、「ネットワークパスワードを入力して下さい」のダイアログが出る。それでつながらない。 …

no image

WPに投稿、評価機能を設ける

■プラグインの準備 WP-PostRatingsをインストールする。 WP-PostRatingsの日本語化ファイルをFTPで上書きする。 ■評価させたい投稿を選択 投稿(コメント)と評価を設けたい投 …