最近、WordPressのコメントスパムがひどくて、かなり怒っています。
もちろん、コメントスパム対策のAkismetがすべてブロックしてくれるのは良いのですが、
スパムとしてマークされたコメントを削除するのがかなり面倒です。
毎日100件近くのコメントスパムがWordpressに送られてくるようになりました。
続きを読む
カテゴリーアーカイブ: Wordpress
jQueryが動かない場合にまず試してみるべき有効な対処法
jQueryが動いていないように思える場合に、まず試してみるべき方法があります。
jQueryのコードをfunctionで囲む
(function($){ コード }(jQuery))
という形式でコードを囲むと、jQueryがあっさりと動くことがあります。
例えば、チェックボックスの背景色を制御する下記のjQueryのコードが動かない場合、
$(function(){ $("table td:has(input[type=checkbox])").hover(function(){ $(this).css("background-color","#efefef"); },function(){ $(this).css("background-color","transparent"); }); $("table td:has(input[type=checkbox])").click(function(){ var chkb = $(this).children("input[type=checkbox]"); if(chkb.attr("checked")) { chkb.attr('checked', false); }else{ chkb.attr('checked', true); } }); $("table td input[type=checkbox]").click(function(){ if($(this).attr("checked")) { $(this).attr('checked', false); }else{ $(this).attr('checked', true); } }); });
そのjQueryを囲むと、下記のようになります。
(function($){//これで囲む $(function(){ $("table td:has(input[type=checkbox])").hover(function(){ $(this).css("background-color","#efefef"); },function(){ $(this).css("background-color","transparent"); }); $("table td:has(input[type=checkbox])").click(function(){ var chkb = $(this).children("input[type=checkbox]"); if(chkb.attr("checked")) { chkb.attr('checked', false); }else{ chkb.attr('checked', true); } }); $("table td input[type=checkbox]").click(function(){ if($(this).attr("checked")) { $(this).attr('checked', false); }else{ $(this).attr('checked', true); } }); }); }(jQuery));//これで囲む
これで、jQueryが動くようになる場合がありますので、まずは試してみる価値があるかもしれません。

jQueryデザインブック 仕事で絶対に使うプロのテクニック
WordPressのタグクラウドに表示させる個数を変更する方法
Wordpressのタグクラウドに表示させるタグの個数を変更したい場合があるかも知れません。
デフォルトではWordpressのタグクラウドに表示される個数は、45個に設定されています。
これを編集します。
1.wp-includes/category-template.php を編集する
Wordpressのタグクラウドに表示させるタグの個数を指定しているのは、wp-includes内のcategory-template.phpを編集します。
その中にある、function wp_tag_cloudという項目で、パラメーターを指定することができます。
2.パラメーターの値を編集する
タグクラウドに表示させるタグの個数は、numberというパラメーターで指定しています。デフォルトでは45に設定されていますので、表示させたい個数に変更します。
その他のパラメーターの値の意味は、下記の通りです。
smallest | 最小タグの表示フォントサイズ。 |
largest | 最大タグの表示フォントサイズ。 |
unit | smallest/largest の値の単位。pt, px, em, % 等。初期値はpt。 |
number | クラウドに表示するタグ数。初期値は 45。0を指定すると全てを表示。 |
format | クラウド表示のフォーマット。 flat – タグをホワイトスペースで区切る list – タグを class=’wp-tag-cloud’ 付きの ul(番号なし箇条書き)内に表示 array – タグを配列に格納し、タグクラウドデータを PHP で扱えるように配列のまま返す。 |
orderby | ソートに用いる項目。 name – タグ名 count – 使用数 |
order | ソート順。 ASC – 昇順 DESC – 降順 RAND – ランダム |
exclude | 除外するタグの term_id をカンマ区切りで指定。 |
include | 表示対象とするタグの term_id をカンマ区切りで指定。 |
link | 特定のタグを編集できるようリンクを設定 。 view edit |
taxonomy | クラウドの生成に使われるタクソノミー。 post_tag – クラウドのソースとして投稿タグを使う category – クラウドのソースとして投稿カテゴリーを使う link_category – クラウドのソースとしてリンクカテゴリーを使う |
echo | 結果を出力するか、変数として保存するかを決定する。 1 (true) 0 (false) |
こうして、Wordpressのタグクラウドに表示させる個数を変更することができました。
WordPressで蛍光マーカーのような下線をCSSで設定する方法
Wordpressで、蛍光マーカーのような下線をCSSで設定する方法です。
単に文字色を変えるだけでは得られない、強調効果を得ることができます。
設定の手順は下記のとおりです。 続きを読む
WordPressでFaviconを表示させる最もスマートな方法
Faviconを表示させるためだけにプラグインを使って処理を増やすよりも、header.phpに直接書き込んだほうが良いのではないかと思います。
手順は下記のとおりです。
続きを読む
WordPressで外部リンクの右側にアイコンを付加する最も簡単な方法
Wordpressにおいて、外部リンクには外部リンクであることが分かるアイコンが付いていると、ユーザービリティが向上するかもしれません。
そのような場合には、外部リンクに対してアイコンを自動付加するプラグインを用いることができます。
外部リンクにアイコンを自動付加するプラグインExternal Links
External Linksというプラグインを導入すると、Wordpress内に含まれる外部リンクすべてに対して、右側に小さなアイコンを付加してくれます。
別ウィンドウで開くか、サイドバーなどの外部リンクにも適用するか、などを管理画面のオプションで簡単に設定することもできます。
外部リンクに付加されるアイコンは、具体的には下記のような表示になります。
Worpress.com
こうして、Wordpressのプラグインを用いて、外部リンクにアイコンを自動的に付加することができました。
[WP Super Cache]『ページがマッチしません ! タイムスタンプが違うか見つかりません !』の対処法
Wordpressのプラグイン「WP Super Cache」は非常に簡便なキャッシュツールです。
しかし、プラグインの管理画面にて「キャッシュをテスト」というボタンをクリックした際、
ページがマッチしません ! タイムスタンプが違うか見つかりません !
というエラーが出る場合があります。
その際に確認すべきなのは次の2点です。
①[詳細]タブ内で、[キャッシュファイルの提供に mod_rewrite を利用する。 (推奨)]を選択する。
②キャッシュを除外するURIとして、トップページを含めていないか確認する。
キャッシュのテストは、トップページのキャッシュで判定されるようですので、トップページをキャッシュから除外していた場合、テストエラーが吐き出されます。
しかしその場合、実用には問題ありませんので、エラーのままでも大丈夫です。
こうして、WP Super Cacheにおいて、[ページがマッチしません ! タイムスタンプが違うか見つかりません !]というエラーを回避することができました。
WordPressでループの最初の記事だけに何かを挿入する方法
Wordpressでは、tagページやarchiveページは、記事の表示にループ出力が用いられています。
このようなページにおいて、ループの最初の記事だけに何かを表示させたい場合があります。
例えば、tagページにAdsenseを挿入したい場合、もしも、ループしているすべての記事の末尾に挿入してしまうと、複数のAdsenseが表示されてしまうことになり、規約違反となってしまいます。
または、ループの最初の記事だけにサムネイル画像を表示さえて強調させたいということがあるかもしれません。
そのような場合に、ループの最初の記事だけに何かを挿入する方法です。
下記は、tagページにおいて、最初の記事の末尾だけに広告を挿入する方法です。
■tag.php内で、Start the Loopという項目を探し、下記のように編集します。
<?php /* Start the Loop */ ?> <?php $first_flag_for_ad = true;?> <?php while ( have_posts() ) : the_post(); ?> <?php /* Include the Post-Format-specific template for the content. * If you want to overload this in a child theme then include a file * called content-___.php (where ___ is the Post Format name) and that will be used instead. */ get_template_part( 'content', get_post_format() ); ?> <?php if($first_flag_for_ad) : ?> <?php echo <<<EOD 【ここに挿入】 EOD; ?> <?php $first_flag_for_ad = false;?> <?php endif;?> <?php endwhile; ?> <?php twentyeleven_content_nav( 'nav-below' ); ?> <?php else : ?>
上記を解説すると、$first_flag_for_adという変数を用意し、最初の出力が終わった段階で、Falseに変更します。While内でTrueの場合にだけ出力させることにより、実現させています。
こうして、Wordpressにおいて、ループ出力させているページの最初の記事だけに何かを表示させることができました。
WordPressで改行を改行として反映させる方法
Wordpressで記事を書いている際に、編集画面では改行を挿入したつもりが、実際に公開してみると、改行が反映されていないことがあります。
記事を見やすくするために、段落間でスペースをとろうとするときには、改行を複数いれたくなるものです。
しかし、HTMLの文法としては、改行を複数入れる事は論理的な構造としては正しくありません。ですので、Wordpressでも複数改行を無視する仕様になっている訳です。
とはいっても、Wordなどと同じような感覚で、改行によるスペースを作リたくなるものです。
そのようなときには、下記のプラグインを入れる事をお勧め致します。
brBrb
http://camcam.info/wordpress/732(別ウィンドウで開きます)ダウンロードしてPluginフォルダに放り込み、Wordpressの管理画面から有効化するだけで、あっという間に思い通りの挙動を実装できてしまいます。
非常に便利ですのでインストールする事をお勧め致します。
こうして、Wordpressにおいて、改行を改行として反映させる事ができました。
Twenty elevenのテーマで2カラムにする方法
Wordpressのデフォルトテーマである Twenty Eleven ですが、
2カラムの設定を施しても、単一記事(Single.php)の表示は1カラムになってしまいます。
そこで、Twenty Elevenの単一記事を2カラムにする最も簡単な方法は、
Twenty Eleven Theme Extensionというプラグインを入れることです。
Twenty Eleven Theme Extensions(別ウィンドウで開きます)
すると、Wordpress管理画面の【外観】メニューに、Theme Extensionsという項目が現れ、
その中の、Enable the widget sidebar on single-post pagesにチェックを入れる事で、単一記事が2カラムになります。
こうして、WordpressのデフォルトテーマであるTwenty Elevenにおいて、単一記事(Single.php)を2カラムにすることができました。