Skip to content

satorun.log

脱3日坊主宣言(仮)

Archive

Tag: WordPress

タイトルの下にブックマークレットを設置してみました。手動でw
何かいいプラグインないんかなー

ちなみにAddClipsというのは見つけたものの、
ボタンが1つになってしまうのと、
うじゃうじゃとアイコンがあるのが何か「二兎を追うもの一兎を得ず」という気がして
嫌だったので回避しました。
完全に好みの問題です。

作業手順は以下、

  1. ブックマーク用のプログラムbookmark.phpを作成

    ソースはこんな感じ。

    <?php /*  ブックマークレット */ ?>
    <div class="bookmark_bar">
    <a href="http://b.hatena.ne.jp/append?<?php the_permalink(); ?>" target="bookmark"><img src="/images/icons/hatena.gif" alt="はてなブックマークに追加" /></a>
    
    <a href="http://clip.livedoor.com/clip/add?link=<?php the_permalink() ?>&title=<?php echo urlencode(mb_convert_encoding(the_title("","",false),"UTF-8")); ?>&jump=ref" target="bookmark"><img src="/images/icons/livedoor.gif" alt="livedoorクリップに追加" /></a>
    
    <a href="http://del.icio.us/post?url=<?php the_permalink() ?>&title=<?php echo urlencode(mb_convert_encoding(the_title("","",false),"UTF-8")); ?>" target="bookmark"><img src="/images/icons/delicious.gif" alt="del.icio.usに追加" /></a>
    
    <a href="http://bookmarks.yahoo.co.jp/action/bookmark?t=<?php echo urlencode(the_title('','',false)); ?>&u=<?php echo urlencode(get_permalink()); ?>" target="bookmark"><img src="/images/icons/ybm16.gif" width="16" height="16" alt="Yahoo!ブックマークに登録" style="border:none;" /></a>
    
    </div>
    <?php /*  ブックマークレット  */ ?>
    
  2. 上で作成したソースを
    テーマディレクトリ([インストールディレクトリ]/wp-content/themes/[適用中のテーマディレクトリ]/
    に配置。
  3. アイコンが入ったディレクトリ(ここではicons)をドキュメントルートに配置
  4. ブックマークレートを配置するソースの該当部分で上記ファイルをinclude
    現在適用中のテーマi-blogだと

    • index.php
    • archive.php
    • single.php

    の3つ。要はエントリーを表示しているファイル全部です。
    インクルードは以下のように。

    < ?php include (TEMPLATEPATH . '/bookmark.php'); ?>

  5. 最後はCSSで見た目を整えます。
    例えばこんな感じ。

    .bookmark_bar {padding: 5px; text-align: right; border-bottom: 1px dotted #767676;}

以上でブックマークレットの設置完了です。

気にしたのは、直接テーマをいじっているため、
テーマを変更した場合に1から設定しなおす必要があるということ。
また、このファイルの存在を忘れないようにすることも案外大切かも。
あとは編集がし易いというのも重要。

ということで、
今回はbookmark.phpを他のテンプレートと同じ場所に設置してincludeしました。
これで、編集が簡単+移行時も別のテーマの同じ場所にコピーするだけ。
また、CSSのカスタマイズなど微調整は必須にはなりますが、
既にテーマの一部になっているため、他のテーマを侵食することもないと思います。
また、アイコンは共通なので、ドキュメントルートに置いています。

これで今後の運用もとりあえず安心!

拍手する

さて、そろそろ形が整ってきたので、ping飛ばしたりブログランキング登録したり
ってことをしようと思ったときに発見したのが下記のようなエントリー

これらのエントリーでは、要はWPってpingをやたらめったら飛ばしてるから対策した方がいいよーってことが書いてあります。
いや、違うかもしれないけどとりあえずその事実をはじめて知りました。
これらのエントリーにあるように編集の度にpingが送信されるってのは非常に困る。
あげくにスパム扱いは泣ける。
特にWPはMTのように再構築もなくさくっとエントリーができるおかげで割りと気楽に公開ボタンを押しがち。
そして後からちくちく修正。プレビュー使えって話ですがw
そんなこんなで、手動送信が可能でかつ既存のエントリーの編集時にはping送信がされないような機能はぜひ欲しいところ。

そこで上のエントリーでも紹介されている

Smart update pinger(日本語版)

を導入することに。

このプラグインでは、上に書いた投稿時のみ送信、手動送信に加えログも見れる。
実際pingを送りまくっているつもりはない、そしてバージョン2.7になった今もこの仕様なのかけっこう謎(調べるのがめんどいだけどw)だけど、ログが見れるかってだけでも導入の価値はあるかなーと思い導入。

導入方法はいつも通り解凍→UP→アクティベート。
で、設定に追加されたSmart update pingerから設定画面に行って設定すればおk

ログも見れる!

と思いきや下記のようなエラーが。。。
Error reading log file (/*/wp-content/smart-update-pinger.log). This could mean that the wp-content directory is write-protected and no log data can be saved, that you have manually removed the log file, or that you have recently upgraded the plugin.

要するにsmart-update-pinger.logちうログファイルが書き込めねーよと。

で、実際に見てみるとファイルが作成されていない。ディレクトリのパーミッションは755。えー。
本当はちゃんと見るべきなんですがめんどくさいので(オイ)
新規でsmart-update-pinger.logを作成してwp-contentへアップロード。
でばっちり問題解決です!

違った。よく見たら読めねーよって書いてだけだった。なので、上でOKかなー?

これで後から未練たらしくダラダラ編集してもスパム扱いされず、
しかもログを見ながら一安心できるわけです。ヨカッタヨカッタ。

あれーでもこのログファイルは本来どのユーザ権限で書き込まれるんだっけー

拍手する

まだコメントが1件もついてないうちから入れるのも微妙ですが、
昔にかなりコメントスパムに悩まされた記憶があるのではやいうちに対策をば。

でも、この辺もデフォルトでも進化してるんだろうなーとか思いつつw

SI CAPTCHA for WordPress

というプラグインを入れてみました。
設定とかは特にいじらず。

continue reading…

拍手する