WP ゲストユーザの投稿 User Submitted Postsプラグイン

サイトにアクセスしたきたユーザーからの投稿を可能にするプラグイン。なかなか、望んでいる機能のものは見当たらないが、「User Submitted Posts」は希望に近い。
 
(期待する機能)

1.ユーザー登録せずに投稿できること。
2.テキストだけでなく画像も投稿できること。
3.投稿後、管理者による承認の後、公開となること。
4.入力送信の際の認証機能があること。
5.操作が簡単であること。

 
以上の5点がほしい。当サイトの「ペット紹介フォーム」がこれである。

(「User Submitted Posts」の主な特徴)

1.投稿テキストだけでなく、画像を一緒に投稿される。
2.画像の数はいくつでも可能。(メディアライブラリーに保存される)。
3.投稿画像数、指定可能。
4.画像のサイズ、最大、最小を設定可能。
5.フォームの入力項目は必要最低限に設定可能。
6.投稿者は投稿する内容のカテゴリーを指定可能。
7.投稿成功、失敗のメッセージ表示が可能。
8.投稿内容は管理者の承認後公開の設定可能。
9.投稿時の入力認証が可能。

このプラグイン、いろいろ課題も抱えているようなので、当サイトの環境を整理しておく。

・WordPress v3.5.1
・User Submitted Posts v20130104
・PHP : Version 5.2.11
・Mysql Version 5.1

また、使用するテーマによっては正常に稼動しないこともあるようだ。

 
【User Submitted Postsプラグインのインストール手順】
 
(1)WordPress プラグイン新規追加よりUser Submitted Postsを
   インストールする。
(2)プラグインを有効化する。
(3)管理画面左のダッシュボードの下のほうのメニュー「設定」の中に
   「User Submitted Posts」が表示される。
(4)「設定」ー>「User Submitted Posts」をクリック。
usp1

(4)「User Submitted Posts」の管理画面が表示される。使用するのは「Options」だけ。使用方法は「Shortcode & Template Tag」にある。
usp2

(5)Optionsの画面を開くと日本語のカテゴリ名部分に文字化けがある。改善されていた場合、以下は無視する。

・user-submitted-posts.phpの730行目あたり。

<span><?php echo htmlentities($category->name); ?></span>
           ↓ ↓ ↓ ↓
<span><?php echo htmlentities($category->name, ENT_QUOTES, 'UTF-8'); ?></span>


・views/submission-form.phpを開いて58行目あたり。

<?php $category = get_category($categoryId); echo htmlentities($category->name); ?>
         ↓ ↓ ↓ ↓
<?php $category = get_category($categoryId); echo htmlentities($category->name, ENT_QUOTES, "UTF-8"); ?>	

(6)英語表示なので要所を、日本語化する。(公開画面のみ対象とする)
views/submission-form.phpのなかの英文、英語項目名等を日本語に変更する。30行目~80行目あたり。

【Your Nameー>お名前に変更】

<label for="user-submitted-name"><?php _e('Your Name'); ?></label>
<input name="user-submitted-name" type="text" value="" placeholder="<?php _e('Your Name'); ?>">

         ↓ ↓ ↓ ↓

<label for="user-submitted-name"><?php _e('お名前'); ?></label>
<input name="user-submitted-name" type="text" value="" placeholder="<?php _e('お名前'); ?>">

必要に応じて下記の項目名も同様に変更する。

Your URL
Post Title
Post Tags
Post Category
Post Content
Upload an Image
Add another image
Submit Post

(7)投稿された際に、メッセージで知らせるを設定した場合、英語のメールが届く。日本語に変化する場合のサンプル。
user-submitted-posts/user-submitted-posts.php の283~284行目あたり

$subject = 'New user-submitted post!';
$message = 'Hey, there is a new user-submitted post waiting for you.';
        ↓ ↓ ↓ ↓
$subject = '【小さな門】新規投稿がありました!';
$message = '外部ゲストより、投稿がありました。承認待ちとなっています。';

(8)このプラグインへの設定サンプルは以下の画像を参照。
usp3

(9)このプラグインの利用方法は、コード、タグを、設置したいページに配置するか、テーマのどこかに下記のタグを埋め込む。

usp4
 
以上で設定完了であるが、重要なポイントを以下に記載する。

1.画像最大幅、縦をオーバーした画像を送ると、画像は送られない。
  エラーメッセージも出ない。
2.画像はメディアライブラリーに保存されるだけで、投稿記事内には
  配置されない。
3.投稿された記事は、承認待ち状態で保留される。サイト管理者は
  投稿の編集で送られてきた画像を投稿記事内に設定し公開する。

 
投稿された記事内に、一緒に投稿された画像を設置する方法があるようだが、WordPressのカスタマイズが必要のようだ。これは余り望まないので、後日時間があれば試してみる。標準機能だけで今のところ十分に使えると思う。

カテゴリー WordPress 小技

コメント

コメントを受け付けておりません。