• Home
  • サイトマップ
Blue Orange Green Pink Purple

Archive for the ‘カスタマイズ’ Category

You can use the search form below to go through the content and find a specific post or page:

4 月 10

カスタムフィールドの記事内での表示方法

カスタムフィールドの基本的な使い方は、WordPress公式ドキュメントを参照

記事中に全てのカスタムフィールドのメタデータを表示する場合は、WordPressループ内に

<?php the_meta(); ?>

を記述すれば、順不同リスト形式で表示できます。

特定キーのメタデータのみを表示したい場合は get_post_meta() 関数を使い

<?php echo get_post_meta($post->ID,'公開希望日',TRUE); ?>

でループ内に表示できます。
指定するキーは日本語もOKです。

ひとつのキーに対して、複数のメタデータがある場合、上述だと表示出来ないので、その方法を。
$single が TRUE だと、一つ目のメタデータのみしか文字列で取得出来ないので、FALSEを指定するんですが、この場合配列で返ってきます。この配列要素を文字列で連結するため implode()関数を使います。但しメタデータが空の場合、エラーになるのでそれを回避。

<?php
$stuff = get_post_meta($post->ID,'担当',FALSE); // $stuff に キー「担当」のメタデータ配列を格納
if($stuff != ""){ // メタデータ配列が空でない場合
echo implode(",", $stuff); // カンマで連結して文字列表示 implode("区切り文字",配列)
}
?>

(PHPは詳しくないので分かりませんが、他にも近い関数があるようですし、もっとスマートな記述はあると思います)

4 月 07

Comment Notifier カスタマイズ

新規コメント(承認待ち、公開)時のメール通知プラグイン「Comment Notifier」のメール通知の内容をカスタマイズ。

新規コメント通知のメールフォーマットを
From:(コメント投稿者)(コメント投稿者E-mail)
Subject:(ブログ名)返信:(記事タイトル)
Body:(コメント投稿者)さんより
   (記事タイトル)に返信がありました

   返信内容:(コメント内容)
   返信内容を確認:(コメントURL)
にしたいので、

comments-notifier.phpの232〜246行目

$notify_message  = sprintf( __('New comment on your post #%1$s "%2$s"'), $comment->comment_post_ID, $post->post_title ) . "\r\n";
$notify_message .= sprintf( __('Author : %1$s (IP: %2$s , %3$s)'), $comment->comment_author, $comment->comment_author_IP, $comment_author_domain ) . "\r\n";

から

$subject = apply_filters('comment_notification_subject', $subject, $comment_id);
$message_headers = "MIME-Version: 1.0\n"
. "$from\n"

までを

$notify_message  = sprintf( __('%1$s さんより'), $comment->comment_author ) . "\r\n";
$notify_message .= sprintf( __('「%1$s」に返信がありました'), $post->post_title ) . "\r\n\r\n";
$notify_message .= __('返信内容:') . "\r\n" . $comment->comment_content . "\r\n\r\n";
$notify_message .= __('返信内容を確認:') . "\r\n";
$subject = sprintf( __('[%1$s] 返信:%2$s'), $blogname, $post->post_title );
$notify_message .= get_permalink($comment->comment_post_ID) . "#comments\r\n\r\n";
$notify_message = apply_filters('comment_notification_text', $notify_message, $comment_id);
$subject = apply_filters('comment_notification_subject', $subject, $comment_id);
$message_headers = "MIME-Version: 1.0\n"
. "From: $comment->comment_author <$comment->comment_author_email> \n"

に差し替え

3 月 19

WordPress(MU) コメント通知のカスタマイズ

WordPress デフォルトのコメント通知は、投稿者のIPだのWhoisだの不要な情報が一杯付いてくるので(用途がクライアント様とのやりとりなので、極力シンプルにしたいので)不要な情報を削除。

本体/wp-includes/pluggable.php の954行目以降と1048行目以降の
不要な情報をコメントアウト

私の場合はコメント情報のみでいいので

New comment on your post
Author
E-mail
URL
Whois
Delete it
Spam it
をコメントアウト

ついでに、From: がコメント投稿者のメールアドレスになってないので989行目

$from = "From: \"$comment->comment_author\" <$wp_email>";

を

$from = "From: \"$comment->comment_author\" <$comment->comment_author_email>";

に変更

3 月 18

Quick Comments (コメント投稿強化&コメント通知)

Quick Comments (0.7.1) のカスタマイズメモ。

Quick Comments のコメント通知機能を使ってメール通知すると、From: の表記がどうも使えない表記になる。
デフォルトだと、From: サイト名 サイトE-mail <サイト管理者E-mail> となる。(サイト名、サイトE-mailはコメント通知オプションで設定した情報)
これでは通知が届いた人にわかりにくいので、From: コメント投稿者 <コメント投稿者E-mail> に変更。

Quick Comments プラグインフォルダの notify-comment-author.php の266行目

$headers = "From: \"{$this->options['site_name']}\" {$this->options['site_email']}\n"

を

$headers = "From: \"{$comment->comment_author}\" <{$comment->comment_author_email}>\n"

に変更。

これで誰からのコメント投稿か、ヘッダー情報だけ分かるようになる。

あとコメント通知を受け取るには、コメント通知のオプション設定で「サイト管理者のメールアドレス」が必須で、これが入力されてないと、コメント投稿画面にコメント通知を受け取るためのチェックボックスが表示されないので要チェック。

2 月 27

Subscribe2 カスタマイズ

  1. Reply-To の修正
  2. 通知されるメールの「Reply-To」の表記が不明な形式になるので
    310行目と609行目の

    $headers .= "Reply-To

    の1行をコメントアウト。
    (4.15時点でまだ未解決)

  3. 各ユーザー毎の購読設定画面を修正
  4. 4.15にバージョンアップして追加された機能に、各ユーザー毎の購読設定画面に、MUの場合、他のブログの購読登録も簡単に出来るようリストが表示されるようになったんですが、どうも権限のないブログも表示されるようなので、そのリストを削除。

    subscribe2.php 本体の2124行目〜2191行目をコメントアウト。

    		// list of subscribed blogs on wordpress mu
    		if  ($s2_mu) {
    			global $blog_id;

    から

    				echo "</ul>\r\n";
    			}
    		}

    まで

  5. Subscribe2 Notification Overrideを修正
  6. (4.14で解決済みなのでカスタマイズの必要無し)
    Subscribe2 をインストールすると記事登録画面に「Subscribe2 Notification Override」という、記事単体でメール通知をするかどうかを設定できる機能が追加される。
    この機能がカスタムフィールドに「s2mail」というメタ情報を勝手に登録するので、を使ってメタ情報一覧を表示する場合、「s2mail」が表示されてしまう。
    これが不要なので、削除する方法。

    subscribe2.php 本体の159行目〜165行目をコメントアウト。

    //		if (function_exists('add_meta_box')) {
    //			add_meta_box('subscribe2', __( 'Subscribe2 Notification Override', 'subscribe2' ), array(&$this, 's2_meta_box'), 'post', 'advanced');
    //			add_meta_box('subscribe2', __( 'Subscribe2 Notification Override', 'subscribe2' ), array(&$this, 's2_meta_box'), 'page', 'advanced');
    //		} else {
    //			add_action('dbx_post_advanced', array(&$this, 's2_meta_box_old'));
    //			add_action('dbx_page_advanced', array(&$this, 's2_meta_box_old'));
    //		}

    記事単体でメール通知をoffにする機能は使えなくなるが、メタ情報はこれで解決。

古い投稿 »

WordPress備忘ログ

  • カテゴリー
    • Mac (1)
    • WordPress (14)
    • WordPress MU (7)
    • カスタマイズ (13)
    • テーマ (1)
    • プラグイン (4)
    • 京都 (1)
  • 最近の投稿
    • Mac OS X環境移行
    • カスタムフィールドの記事内での表示方法
    • Comment Notifier カスタマイズ
    • WordPress(MU) コメント通知のカスタマイズ
    • Quick Comments (コメント投稿強化&コメント通知)
    • Subscribe2 カスタマイズ
    • XREA で WordPress アップロード機能を使う
  • タグ
    新規タグの追加
  • アーカイブ
  • Archives
    • 2010 年 7 月
    • 2009 年 4 月
    • 2009 年 3 月
    • 2009 年 2 月
  • Search






  • Home
  • サイトマップ

© Copyright WordPress備忘ログ. All rights reserved.
Designed by FTL Wordpress Themes brought to you by Smashing Magazine

Back to Top