facebook コメントの設置

facebook へログインしてから
https://developers.facebook.com/docs/reference/plugins/comments/
へアクセスします
URL to comment on (?)
へサイトのURL
Width (?)
は横幅
Number of posts (?)
には最大投稿件数
Color Scheme (?)は
light
これで
Get Code
をクリックすると
コードがでるので、これをコピペします

Facebook LikeBox 作成

https://developers.facebook.com/docs/reference/plugins/like-box/
へアクセスし
Facebook like box を作成できます
ただし、事前にfacebook ページの作成が必要です
facebook ページの作成には
http://web-tan.forum.impressrd.jp/e/2012/05/30/12806
が参考になります
去年、タイムラインが導入されていますので
あまり古い記事は仕様変更のため
実際には使えないというケースがあるので
注意が必要です

OGPについて

OGPは
Open Graph Protocol の略名で
Facebook や Google+
で使われている
これは、プログラムにページの意味を理解させやすくするHTMLの付加情報
facebookが一番わかりやすい例で
いいねボタンがおされたときに
その内容がでるというもの
これを作成するには
いいねボタンを作成したときと同じように
LIke Button を作成する
https://developers.facebook.com/docs/reference/plugins/like/
ただし、今回、入力するのは、ふつうに
いいねボタンを作成する Step1 ではなく
その下にある
Step 2 – Get Open Graph Tags
のほう
Title (?)
にタイトルを入力
Type には article
URLにはサイトURL
Image (?)はなくてもOK
Site name (?)
にサイト名
Admin (?)
はそのまま表示されている数値を使う
最後に get Tags
をクリックしてコード生成
タグの中の解説になrますが
fb:admins
管理者ID
og:title
タイトル
og:type
記事のタイプ
og:url
URL
og:site_name
サイト名
og:locale
ロケーション情報
og:image
アイキャッチ画像があればそれを使う
ないならデフォルト
og:description
各ページ本文からの抜粋文

Facebook いいねボタン設置

まず、Facebook のアカウントを作成します
アカウント作成については
Facebookのアカウントを作成する
を参照
アカウントを作成し、ログインしたら
Like Button ページへアクセスします
https://developers.facebook.com/docs/reference/plugins/like/
以下の必要な項目を入力していきます
URL to Like (?)
サイトのURL
Send Button (XFBML Only) (?)
のSend Buttonのチェックを外しました
(送信ボタンがなくなります)
Layout Style (?)
レイアウトの設定になります
基本的に standard のままでよいと思います
Width (?)
でボタンの幅を設定
Show Faces (?)
チェックをいれると、顔が表示されます
Font (?)
フォント(文字の大きさです)
デフォルトのままでもOKです
Color Scheme (?)
背景色です
light から dark にすると、背景色が黒くなります
Verb to display (?)
ぼたんの切り替えです
like ならいいねボタン
recommend ならおすすめボタンに変化します
最後に get Code でコードを生成し、
できたものをコピペします

はてなブックマークボタンの設置にかんしては
はてなブックマークボタンの作成・設置について
http://b.hatena.ne.jp/guide/bbutton
を参考にというか、そのままここで作成できる
次に、twitter ボタンの設置
twitter ボタンを作成するには
http://twitter.com/about/resources/buttons#tweet
で言語設定をしたら
スクリプトがでるので、あとはコピペ
次は、Google+の+1ボタンの設置
www.google.com/webmasters/+1/button/index.html
へアクセスしボタンを作成
ただし、今は英語サイトのようなので
解説を追加
まず、size で大きさを設定
Annotation
はバルーンを選択しました
Language
は日本語を選択
Advanced options
は詳細設定なので
ここで
HTML5 valid syntax
にチェックが入っているのを確認
(意味は、有効なHTML5の構文らしい)
URL to +1
のところへ、+1ボタンの対象になるサイトURLを指定
これで、画面の右側に
Look good? Copy the code?
の下のところへ
Google+ のボタンの画像と
それを生成するコードがでるので、このコードをコピペします

コメントテンプレの作成

コメントテンプレはデフォルトで表示はされるけど
実は wordpress 非推奨
なので、実は自作したほうがいい
その中で使う関数などのメモ
if(post_password_requred());
当該記事がパスワードで保護されているか判断
保護されているならコメント処理を中段
記事への
パスワード設定は
記事を編集する画面で
ステータスのところに編集があるので
ここでパスワード保護にすればOK
if(have_comments())
当該記事にコメントがある場合の表示処理を分岐する
get_the_title()
記事のタイトルを取得
get_comments_number()
記事についているコメントの件数を取得
wp_list_comments()
実際のコメントを出力
引数でアバター画面のサイズを設定
if(get_comment_pages_count >1 && get_option(‘page_comments’))
コメントをページャで分割表示するか否か判別
分割表示するなら
previous_comments_link()
next_comments_link()

分割されたページへのリンクを
引数リンク文字として出力
comments_form();
コメントフォーム表示

コメント受付をコラムカテゴリのみにする

functions.php に関数を作成し
add_filter() でcomments_openフィルターフックへ
comments_allow_only_column()
を登録する
コメントカテゴリでは true
それ以外なら false にすることで
コメント機能の有効、向こうを制御する
add_filter()
の第3引数で優先順位を指定している
前回は11だったけど
基本は10
同じフィルターフックに登録されている関数は優先順位の高い順、つまり数字の小さい順番に
実行される
第4引数では、関数に渡す引数の値を2にしている
設定完了語、コメント欄ができるので
コメントして実験
ログインしているときと、していないときでは動きが変わる
コメント表示条件を変更するには
ダッシュボードの 
設定 > ディスカッション設定で
おこなう
通常の設定だと
承認していないユーザのコメントは
そのままでは表示されないため
ダッシュボードにある
コメントをクリックするとコメント一覧がでるので
コメントのところにマウスオーバーすれば
承認するかでるので
ここで承認すれば、コメントが表示されるようになります

wordpress コメント欄作成

coments_template(”,true);

コメントテンプレートの読み出しをする
もし、テンプレが作成されていないなら
wordpress 本体の
コメントテンプレが適用される
この場合は、デフォルトのコメント欄表示になる
第一引数の” へコメントテンプレのファイル名を書く
これを省略した場合には
comments.php になる
第2引数には
true ならコメントを分けて表示する
false ならわけて表示しない
あと、特定のカテゴリ内か判断する
in_category()
とか、個別投稿記事か判断する
is_single()
のようなテンプレタグをif とかで条件分岐させて
表示する内容を制御するということもできる
これについては
wordpress codex 日本語版 条件分岐タグ
が参考になる

wordpress 関数メモ(RSS関連)

th_feed_link()
RSSフィードへのリンクを出力するテンプレタグ
引数にはリンク文字列を渡す
if(is_category(‘column’) || (is_single() && in_categry(‘column’))):
でコラム カテゴリ内か否か判断する
get_ctegory_feed_link()
カテゴリを限定したRSSフィードのURLを取得する
引数はカテゴリのID
カテゴリIDは
get_category_by_slug(‘column’)->term_id
で取得