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 );

MW WP Form

MW WP Form はショートコードベースのフォームプラグインです。多くの機能を持っており、例えば、多くのバリデーションルール、問い合わせデータの保存、そしてグラフ機能集計などを使用することができます。

さらに詳しく
Habakiri

Habakiri

Bootstrap ベースのシンプルな WordPress テーマ。レスポンシブ、多くのカスタマイズ機能。圧縮された CSS・JS を使用する高速化対策。Microformats 対応。Sass、クラスベースの functions.php。

さらに詳しく
basis-stylus

Basis

軽量なレスポンシブ Stylus/CSS フレームワーク。Flexbox ベースのグリッドシステム、疎結合なコンポーネント、バーティカルリズム。

さらに詳しく