WordPressのプラグイン導入

昨日(WordPressの導入 - 歩くパンケーキたち)の続き。
プラグインの導入の続きから。WordPressのバージョンは2.61です。テーマはデフォルトのを改造していってます。
ちなみに、HTMLとCSSの知識はありますがPHPMySQLは全くの素人です。他のプログラム言語の知識はあるのでPHPをあまり勉強せず無理矢理押し切る予定。
長いので折りたたみます。
昨日入れたのは以下。リンク先は日本語の解説サイトへ。基本的なプラグインのインストール手順はWordPress Plugins/JSeries » WordPress plugin installを参考。

スパム対策、ディフォルトで入っているのを有効化。

Google Analyticsを自動的に適用、Account IDは「Analytics 設定 > アカウントとデータ共有設定の編集」にある(Set up the Analytics tag - Analytics Help)

GoogleYahoo!クローラーサイトマップを自動生成。

タグやカテゴリも検索対象にする…And検索が効いていない感じ。なぜだろう。

データベース上の記事などの内容を定期的にバックアップ、日本語版と書いて配っているのは古いため定期的バックアップができなかったので注意して新しいものを入れ、定期的にgmailにバックアップデータを送ることにする。gzip(拡張子gz)で圧縮されているのだけど、いつも使っている+Lhacaでは対応しているのに開くと空っぽになってしまう。解凍レンジなら上手く開けた。

サイドバーを気軽にカスタマイズ。WordPress 2.61ではもうすでに入っているようで、プラグインには見当たらないが、デザインの中にウィジェットという項目があるのでそこからカスタマイズ。デフォルトで入っていない追加のウィジェットは後で加える。とりあえず、デフォルトの中から、テキスト、ページ、検索、カテゴリー、タグクラウド、最近の投稿、リンク、メタ情報を加える。


今日はさらに細かい設定をしていく。

for WordPress 2.3 and 2.5と書いてあるが2.61でも動くようだ。ディフォルトのタグ機能を拡張してくれる。とりあえず、記事を入力するときにクリックタグが出てきてくれるだけでも助かる。日本語ファイルはlanguagesのフォルダ内のを上書きしてみた。ウィジェットからタグクラウドを有効化。デフォルトで入っているものより設定が細かくできる。管理と設定の両方にいじれる項目が出てくる。設定のほうから関連投稿のフィードに「関連投稿を自動的に表示する」をチェックし、「投稿内に関連投稿を自動的に表示する」から適当なのを選ぶ。
また、下のをアーカイブのページに入れて関連するタグの絞込み、解除をできるようにする。

<?php st_related_tags(); ?>
<?php st_remove_related_tags(); ?>

でも、タグANDが上手く効いてないみたい。除去するとNot Foundに落ちてしまう。2個までしか絞り込めない。…と、http://blog.ne2ma2.com/archives/268という記事を発見。これに習ってプラグインの中身を書き換えてみました。が、なんだか上手くいかない。最初の修正箇所を入れるとページ自体が表示されなくなってしまう。けど、最初以外のものを挿入すると除去がちゃんと動く。2個までしか絞り込めないのは相変わらず。参考のサイトでは3つ以上も動いている。なんでだろうか。URLに直接+〜を3つ以上入れると動いてるし…。やっぱり最初の入れるとエラーが出る部分が怪しいのだけれど。wordpressのバージョンが違うからそのせいかもしれないなぁ(日本語タグの問題は直っている、気がするけど)。
…と、参考サイトの最初の挿入箇所に全角「’」を発見。お前かー!!ということで全部書き換えたら動きました!これで3つ以上も絞り込めます。若干重いみたいですが。単純コピペに頼るからこういうことになるんだと反省。以下、最初のコードの挿入箇所の全角を半角に直したコード。

if ( strpos( $slugs, ',') ) {
	$current_slugs= get_query_var('tag_slug__in');
	$slugs = implode(',',$current_slugs);
} elseif ( strpos( $slugs, '+') ) {
	//このケースは不明
	$current_slugs= get_query_var('tag_slug__and');
	$slugs = implode('+',$current_slugs);
} elseif ( strpos( $slugs, ' ') ) {
	$current_slugs= get_query_var('tag_slug__and');
	$slugs = implode(' ',$current_slugs);
}else {
	$current_slugs[] = $slugs;
}

文句言ってるようですが、PHPが分からないので、こういうのを公開してもらえるととても助かります。…ってか読めたとしてもこの長いコードの前には読む気が起きそうにもないです。こういうのをちゃんと分かる人は凄いです。

プラグインPopularity Contestウィジェット化するプラグイン。Popularity Contestが重大なエラーが出て上手く有効化できなかったが、Wordpress 2.5: Popularity Contest が「重大なエラー」になる / 日本語表示できない | Nire.Comの解決方法その2の修正版を利用することによりできた、時間があったら写真で表示するように書き換えたいところだが…。また、Popularity Contestを各ページに表示するため、

<?php akpc_the_popularity(); ?>

をデザイン>テーマエディタ>単一記事の投稿(single.php)内の適当な位置に置いた。これにより個々のページにPopularity: xx%が表示される。Popularity Contestの重み付けは設定から変えられる。

http://ameblo.jp/e-npo/entry-10087161405.htmlにはやや面倒なインストール手順が書かれているが、このバージョンの場合は普通にプラグインのフォルダに入れて有効化、ウィジェットでデフォルトのリンクをMy Link Orderに変え、管理のMy Link Orderで並べ替え、で良さそう。show images?などのチェックボックスはリンクを作成したときの画像やRatingを表示するかどうか。

  • My Category Order 2.6.1a

同上。順番を並べ替える以外の設定もデフォルトのカテゴリーよりも細かくできて便利です。

過去の記事内の画像をランダム表示。ウィジェットとして使える。設定のRandom Imageから細かい設定。ウィジェットのタイトルが設定できない…。

ページの中身をキャッシュして(=データベースにいちいち拾いに行かない)、ページの表示時間を短くする、らしいプラグイン。参考サイトには管理パネル > オプション > 表示設定 にて、「ブラウザの要求に応じて投稿内容を圧縮する (gzip)」を無効に、って書いてあるけれど、見つからない。無くなったのかな。その後はこの通りに実行。wp_cache_mutex.lockができたので、たぶん、上手くいっている。

入れてみたけど、拡大画像が原寸大しか表示できない。原寸が大きい場合は全然入らない。設定できないかとちょっと調べたけど、もともとLightbox自体が原寸を表示するためのソフトなので、そこでさらに画面に当てはまるサイズの画像を表示とかは無理そう。残念。サムネイルはそのまま原寸画像にリンクするしかないか…。

記事投稿のときのタグの入力補助。が、そんなに複雑なことをする予定でもないので、使わない予感。とりあえず、停止に。

サイトを携帯電話でも表示できるように。たまに携帯サイトからリンクされているので。私自身はパケホーダイじゃないので使いませんけどね…。FirefoxのアドオンUser Agent Switcherで確認したところ上手くいっている模様。

パンくずリストを表示する。日本語版のはずですが、日本語化されません。パンくずナビゲーションプラグイン Breadcrumb Navigation XT | WordPressで企業ウェブサイト作成・商用ホームページ制作 WordPress Go Goを参考にheader.phpにコードを入れ、それに合わせてstyle.cssにもクラスbreadcrumbのスタイルシートを書き加える。設定の項目がいっぱいあるがBreadcrumb Separatorに区切り文字を入れるだけで良さそう。個別のページを開いたときはカテゴリの階層構造が表示されないのはちょっと残念だが、カテゴリのアーカイブではちゃんとパンくずになるから良いか。

メンテナンスモードを導入。本当は先に入れて、activeにしてから色々作業したほうが良いのかもしれない。

ページの番号を並べたリストを作る。ページ数が増えそうなので。テーマへの挿入はhttp://wordpress-in.blogspot.com/2008/01/wp-pagenavi-220.htmlを参考にindex.php

<div class="navigation">
	<div class="alignleft"><?php next_posts_link(__('&laquo; Older Entries', 'kubrick')) ?></div>
	<div class="alignright"><?php previous_posts_link(__('Newer Entries &raquo;', 'kubrick')) ?></div>
</div>

の部分を

<div class="navigation">
	<?php wp_pagenavi(); ?>
</div>

に書き換える。アーカイブ (archive.php)も同様の部分を書き換える。それから好みで設定の「Always Show Page Navigation?」をYesにしてみました。デザイン変更はプラグインフォルダ内にCSSファイルを持っているのでそれを書き換える必要がありました。

サーチエンジンから飛んできたり、サイト内検索を行ったりした際に、キーワードをハイライトするプラグイン。調べ物をしているときにこれが入っていると嬉しいので導入。言語ファイルはsearchword-highlight.php, searchword-highlight-ja_UTF.moです。http://matopc.myvnc.com/archives/2005/06/28/search-word-highlight/を参考にサイト内検索は本文にも適用するようにしました。が、これってタグやタイトル部分はハイライトしてくれないんですね。ちょっとサイトの構成上、無駄かもしれない。

ターレーティングできるプラグイン。上と記事評価及び人気ページランキングを表示するプラグイン[WP] - ミblog : レビューや日常などが参考になりました。single.phpのタイトルの下くらいに

<div class="rating">
     <?php if(function_exists('the_ratings')) { the_ratings(); } ?>
</div>

を入れ、style.css内にクラスratingに対するスタイルを記入。無事レーティングに成功。テンプレートなど設定を少しいじる。また、index.phpにも個々の記事のタイトルの下くらいに

<div class="rating_top">
     <?php echo the_ratings_results(get_the_id()); ?>
</div>

を挿入。これは、投票はできないけど星マークが見える機能。アーカイブ (archive.php)にも同様に挿入。本当はアーカイブのページはサムネイルとレーティングを縦横に並べるギャラリー的なページにしたいんだけど…。時間がかかりそうなので明日以降。また、ウィジェットも適用してサイドバーに加えました。

画像ファイルのアップロードや管理を使いやすく。画像サイトなので必須かなと思い。一度設定の変更の有効化のボタンを押さないと作動しないらしい。新規投稿作成のHTML版の方にボタンが出現するのでクリックでファイラーのような別窓が現れて、画像ファイル操作ができます。と思ったら、ビジュアル表示の方にもアイコンがいました。最初はいらなそうですが、画像が増えてきたら助かる気がします。それから、「Insert as」の「thumbnail with Pop up」が意外に良いかも。JavaScriptなところが気になるけど良い感じの拡大表示です。


それから、プラグインには関係ないが、ちょっと変な感じがしたこととして、カテゴリー階層わけに関しての注意。下の階層をチェックしても上の階層は自動的にはチェックされないので、自分で上の階層もチェックしてあげる必要があるみたい。


これで、プラグインは終了、のつもり。20個も入れてしまった。重くなりそうな気もするので、徐々に本当に必要なものだけ残してシェイプアップをはかりたいです。
明日以降はテーマをいじるのと、元々のサイトにあった画像データのアップロードの予定です。