Ktai Entryを利用してメール投稿をしたとき「投稿者」権限でも即公開する方法

Ktai Entry

Ktai Entryは、設定したメールアドレス宛にメールを送信することで記事投稿ができるようになるプラグイン。基本的な使い方などは下記をご参照ください。

Ktai Entryは、設定したメールアドレスに送られてきたメールの送り主をもとに、誰の投稿かを判断する。そして、その送り主の権限を参照され記事のステータスが決まる。権限が管理者・編集者であれば記事はすぐに公開されるが、投稿者の場合は下書き状態で保存される。

今回、複数のユーザーが存在するサイトでKtai Entryを利用することになり、「作成者」権限のユーザーからメール投稿された記事も即公開状態にしたかったので、方法を調べてみた。

記事のステータスを決める部分に「ktai_post_status」フックが用意されていたのでそれを利用すれば良い。

public function ktai_post_status( $status, $flg, $author, $from) {
	// ユーザー情報を取得
	$user = wp_set_current_user( $author );
	// 投稿者でも公開状態で投稿
	if ( current_user_can( 'edit_published_posts' ) ) {
		$status = 'publish';
	}
	return $status;
}
add_filter( 'ktai_post_status', 'ktai_post_status', 10, 4 );
  • ブックマーク
  • Feedly

この記事を書いた人

キタジマタカシ

長崎在住、フリーランスのWordPress テーマ / プラグインデベロッパー。 多数のプロダクトをオープンソースで開発・公開しています。現在は WordPress 有料テーマ Snow Monkey を開発・販売しています。