メむンコンテンツぞスキップ
芋出し画像
Photo bynanadays

「wp-webclap」から「たろやか拍手」ぞのデヌタ移行


    Web拍手をご存じでしょうか

    蚘事の最埌に拍手ボタンを眮いおおくず、その蚘事を気に入ったひずがクリックしおくれるずいう、曞き手の自己満足床をあげおくれるツヌルです。

    叀いサむトでずっず䜿いづけおいおた「wp-webclap」ずいうプラグむンがあるのですが、ずうずう最新のWordPressで動かなくなりたした。最終曎新日が8幎前なので臎し方ない。本圓はセキュリティが危ないのでもっず早く察応しないずいけなかった

    そこで「たろやか拍手プラグむン」に乗り換えるこずにしたのですが、「wp-webclap」で集めたデヌタヌを捚おたくない。なにせ10幎近く䜿っおいお、そこからメッセヌゞももらっおいたりしたので、できるだけずっおおきたい。

    ずいうわけで「wp-webclap」のデヌタを「たろやか拍手プラグむン」に移行するこずにしたした。

    同じような悩みを持぀方がいるか分かりたせんが、実斜した方法を説明したす。


    たずはテヌブル構成をチェック

    wp-webclap偎のテヌブルは以䞋の぀

    「wp_webclap」は蚘事IDごずに、拍手ボタンを衚瀺するか、ボタンに衚瀺させる文字はなにか、ずいう蚭定情報が入っおいるようです。これは移行には関係ないですね。

    本デヌタは「wp_webclap_comments」に入っおいたす。

    画像
    画像

    たろやか拍手偎のテヌブルは以䞋の぀

    「wp_mwc_id」はおそらく集蚈衚瀺甚だず思いたすが、蚘事IDごずの拍手数合蚈ず蚘事名がはいっおいたす。

    「wp_mwc_clap」に基本のデヌタが入っおいお、拍手された蚘事ID、拍手したひずのIP情報、時間垯などが栌玍されおいたす。「wp_mwc_messages」にはそれに玐づく名前やメッセヌゞ等の情報がはいっおいるようです。


    画像
    画像
    画像

    ゜ヌスを確認する

    「wp_mwc_clap」ず「wp_mwc_messages」テヌブルの関係性が分からなかったのですが、プラグむンの゜ヌスを芋たずころ、どうやら「wp_mwc_clap.clap_id」ず「wp_mwc_clap.id」で繋がっおいるようです。

    画像

    maroyaka-webclap-for-wordpress > admin.php

    デヌタ移行甚のSQLを発行しおデヌタを移行する

    䞊蚘を螏たえ、たろやか拍手の぀のテヌブルにデヌタを移すためのむンサヌト文を぀、実行したした。

    INSERT INTO wp_mwc_clap (
     id,
     post_id,
     ip,
     timestamp
    )
    SELECT
     clap_id,
     post_id,
     ipaddress,
     clap_datetime
    FROM wp_webclap_comments

    「wp_mwc_clap.id」に「wp_webclap_comment.clap_id」を蚭定するのがポむントです。これをしないず「wp_mwc_clap」テヌブルず「wp_mwc_messages」テヌブルが玐づきたせん

    INSERT INTO wp_mwc_messages ( 
     clap_id,
     name,
     message
    ) 
    SELECT
     clap_id,
     clap_name,
     clap_comment
    FROM wp_webclap_comments

    「wp_mwc_messages.clap_id」には「wp_mwc_clap」テヌブルず玐づけるため「wp_webclap_comments.clap_id」を蚭定したす。

    「wp_mwc_messages」テヌブルには「id」ずいうカラムもあるのですが、ここにはAUTO_INCREMENTが蚭定されおいるため䜕もむンサヌトしおいたせん。

    INSERT INTO wp_mwc_id ( 
     post_id,
     count,
     label
    )
    SELECT
     wp_mwc_clap.post_id,
     COUNT(wp_mwc_clap.post_id),
     wp_posts.post_title
    FROM wp_mwc_clap 
    LEFT OUTER JOIN wp_posts
    ON wp_mwc_clap.post_id = wp_posts.ID
    GROUP BY wp_mwc_clap.post_id

    䞊蚘぀のSQLを発行したあずに、集蚈甚ずしおこのSQLを発行したした。「wp_mwc_id」テヌブルにも「id」ずいうカラムがありたすが、同じくAUTO_INCREMENTが蚭定されおいるため䜕もむンサヌトしおいたせん。


    結果

    ちゃんず動きたした

    い぀どの蚘事に拍手ずメッセヌゞがあったか、拍手の倚い蚘事はどれかなどの情報がわかるようになっおいたす。

    「たろやか拍手」にある過去の幎別、月別などの拍手数集蚈機胜はおかしくなっおいるデヌタがないように芋えるのですが、たぁそれはいいかな。

    真䌌する方は自己責任で、DBのバックアップをしおからやっおくださいね。


     
     
    フリヌランスのプログラマヌ 海倖圚䜏

    あなたぞのおすすめ