Twenty Ten、Twenty Elevenのヘッダー画像を1行で非表示にする方法

Twenty Ten、Twenty Elevenでヘッダー画像を表示させないようにするには、header.phpを編集する方法や、CSSでdisplay: noneの指定を追加する方法もありますが、functions.phpの1行書き足すだけで、あっさり非表示にもできる方法があるのをご存じでしょうか。

“Twenty Ten、Twenty Elevenのヘッダー画像を1行で非表示にする方法” の続きを読む

WordPressで時差分ずれない著作権年号表示の仕方

フッターにある「Copyright © YYYY ・・・ 」のYYYYにあたる年号を自動的に表示する方法として、CODE 1を紹介していることがあります。

CODE 1

<?php echo date( 'Y' ); ?>

ただ、WordPressの2.9以降では、内部の時刻計算をGMT(Greenwich Mean Time:国際標準時)で行っているため、CODE 1 では日本との時差分9時間ずれてしまうことになるって知ってましたか?

まあ、微々たる差とは言え、やっぱりピタリと切り替えたいと思うのが人情というものではないでしょうか。そんな繊細な貴君に使ってもらいたいのが、CODE 2

CODE 2

<?php echo date_i18n( 'Y' ); ?>

date_i18n 関数の第2引数、第3引数を省略すると、自動的に現地時間の現在時刻を返すようになるので、時差の心配をしたり、計算し直す面倒な処理をする必要もなくなります。

WordPressで最新の記事公開日時を取得する方法

先日開催されたWordBench 川崎で星野さんが作成していたプラグイン「Hello Wapuu」の作成中に、「最新の更新日時は、get_lastpostmodified( ‘blog’ );で取れるのだけど、最新の公開日時はどうしたら取れるでしょうね?」と聞かれて、更新日時があるなら公開日時を取得する関数もありそうだなとは思いつつ、既に書かれているコードをちょっとだけ直す方法をお伝えしたのでした。

今日になって、最新の公開日時を取得する関数がないか気になって調べてみたら、、、
ありました!

get_lastpostdate( 'blog' );

get_lastpostdateは、投稿、固定ページ、カスタム投稿タイプなどの公開記事から最新のものを取得するようになっています。
キャッシュ機構も備わっているので、多用した場合でもデータベースクエリーが増えてしまうこともありません。
パラメータで使えるものは、gmt、blog、serverの3種類ですが、日本時間などローカルタイムで取得できるのは、blogになるので、これが一番使い勝手が良いと思います。

WordPressでマルチサイトでのみ使えるプラグインを作る方法

WordPressのプラグインにはネットワークでのみ有効にできるようにする方法があるのをご存じでしたか?

方法は簡単、プラグインをプラグインとして認識させるためには、ファイルの冒頭に書式に従ったコメントを記述する必要がありますが、このコメントに Network パラメータに true を指定するだけです。

/*
Plugin Name: Site Wides
Plugin URI: https://www.warna.info/archives/1634/
Description: マルチサイト専用プラグインテスト
Author: jim912
Version: 0.1
License: GPLv2 or later
Author URI: https://www.warna.info/
Network: true
*/

プラグインページを表示してみると、

ネットワーク専用のプラグイン

左がサイト管理のプラグインリスト、右がネットワーク管理のプラグインリスト。
ネットワークの方にのみ「Site Wides」のプラグインが表示されているのが分りますね。

ちなみに、この Network パラメータの指定は、大文字・小文字を区別しない true である必要があり、 TRUE でも True でも true でも tRuE でも有効とみなされますが、1yes などといったパラメータは受け付けてくれません。

Oni daiko みたいにネットワークでのみ動作するプラグインなどには有効ですね!

管理画面の語尾の全てに「ぷー」を追加するコード

書いたよ。

if ( is_admin() ) {
	function add_puu( $translated ) {
		$translated .= 'ぷー';
		return $translated;
	}
	add_filter( 'gettext', 'add_puu' );
	add_filter( 'gettext_with_context', 'add_puu' );
	add_filter( 'ngettext', 'add_puu' );
	add_filter( 'ngettext_with_context', 'add_puu' );
}

ほらね。

わがまま言いおって

if ( is_admin() ) {
	function add_puu( $translated ) {
		$translated = rtrim( $translated, '  。' );
		$translated .= 'だぷー';
		return $translated;
	}
	add_filter( 'gettext', 'add_puu' );
	add_filter( 'gettext_with_context', 'add_puu' );
	add_filter( 'ngettext', 'add_puu' );
	add_filter( 'ngettext_with_context', 'add_puu' );
}