質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

Q&A

解決済

1回答

1730閲覧

WordPressでのお問い合わせ登録

退会済みユーザー

退会済みユーザー

総合スコア0

WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

0グッド

1クリップ

投稿2017/03/07 10:29

編集2017/03/07 12:58

WordPress初心者です。
現在web構築を行っているのですが以下のソースが
組み立てられず困っています。


投稿者権限グループに所属しているユーザでコネクトフォームに登録したい。

問い合わせフォームのフィールドは作成してあり、名前および住所等が記載されてあります。

WordPress初心者で苦戦しています。
お手数ですが知っている方ご教授をお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2017/03/07 10:40

(1)「プラグインのWP Membersで作成した投稿者レベル」は「購読者」のことですか? (2)「Contact Form7に登録する」とは何を登録するのですか? (3)「プラグインが2つ発生した場合のロジックが組め」ないのであれば、まずはひとつずつのソースを提示されると回答がつきやすくなると思います。
退会済みユーザー

退会済みユーザー

2017/03/07 11:01

miz様:ご指摘ありがとうございます。質問文を修正させていただきました。(3)につきましてもそもそもが混乱して苦戦している状況のため削除させて頂きました。
kei344

2017/03/07 12:16

質問文のコードはコードブロックで囲んでいただけませんか? ```(バッククオート3つ)で囲み、前後に改行をいれるか、コードを選択して「<code>」ボタンを押すとコードブロックになります。
退会済みユーザー

退会済みユーザー

2017/03/07 12:32

kei344様:ご指摘ありがとうございます。読みにくく大変申し訳ございませんでした。修正致しました。教えて頂きありがとうございます。
guest

回答1

0

ベストアンサー

質問文の修正ありがとうございます。

Contact Form 7で作成したフォームで送信する内容を、同時に投稿として保存するのであれば、以下の内容が参考になるかと思います。
(Contact Form 7のフックを検索していたら、偶然見つけました)

Contact Form 7のhook集 - Daily GLOCALISM
http://daily.glocalism.jp/wordpress/contact-form-7-hooks/

###追記

PHP

1// Contact Form 7で作成したフォームの送信ボタンを押下 2// フォームの内容がメールで送信される時にその内容を投稿(post)として登録する 3add_action('wpcf7_mail_sent', 'gloc_wpcf7_insert_post', 10, 1); 4 5function gloc_wpcf7_insert_post(){ 6 7 $submission = WPCF7_Submission::get_instance(); 8 if ( $submission ) { 9 // フォームで送信されるデータを取得する 10 $formdata = $submission->get_posted_data(); 11 12 // 必要に応じて、$formdataからデータを読み出す 13 $email = $formdata['your-email']; 14 $name = $formdata['your-name']; 15 $message = $formdata['your-message']; 16 $other = $formdata['some_meta']; 17 18 // 投稿の所有者となるユーザーIDを指定する 19 $author = 1; 20 21 // データベースへ投稿を追加する 22 $new_post = array( 23 'post_type' => 'post', 24 'post_title' => $email . ' ' . $name , 25 'post_status' => 'draft', 26 'post_content' => $message, 27 'post_author' => $author // 指定しない場合は、ログイン中のユーザーの所有となる 28 ); 29 $post_id = wp_insert_post( $new_post ); 30 31 // 関連情報などがあれば、投稿IDで結びつけてメタデータとして追加する 32 add_post_meta( $post_id, 'some_meta', $other); 33 } 34}

投稿2017/03/07 11:17

編集2017/03/07 13:18
退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2017/03/07 11:37

ご回答ありがとうございます。 確認します。 再度ご返答致します。
退会済みユーザー

退会済みユーザー

2017/03/07 11:50

確認しました。ありがとうございます。 サンプルどおりで メール送信後に保存機能はできそうです。 ただ、『投稿者権限グループに所属しているユーザ』でというところが 管理者権限になってしまいます。 何か不足のコードが必要なんでしょうか。
退会済みユーザー

退会済みユーザー

2017/03/07 12:07

いまいち仕様を理解できていないのですが、投稿者ユーザがフォームから送信したときだけ、wp_insert_postするようにしたいということですか? そうであれば、`current_user_can()`で権限が投稿者であるかを判定すればいいのではないでしょうか。
退会済みユーザー

退会済みユーザー

2017/03/07 12:29

説明が下手で申し訳ございません。 プラグインのWP Membersで作成したユーザー(投稿者)レベルで登録をするというものです。
kei344

2017/03/07 12:38

To: tanugumaさん 管理者でログインしながら 別ユーザーとして記事を書きたい、という事でしょうか。それで無ければメール送信テストを『投稿者権限グループに所属しているユーザ』でログインした状態で行わないといけないのでは。
退会済みユーザー

退会済みユーザー

2017/03/07 12:43

質問者様の文章ですと、何を登録したいのかという目的語が抜けていて理解が難しいです。 特定の投稿者ユーザーを所有者としてwp_insert_postしたいということであれば、 wp_insert_post()のパラメータpost_authorを設定すればいいだけです。
退会済みユーザー

退会済みユーザー

2017/03/07 12:43

kei344様: ご回答ありがとうございます。 管理者でログインや異なるユーザでログインしている状態でも 『送信』ボタンを押下した時に『投稿者』として登録したいということです。
kei344

2017/03/07 12:47

To: tanugumaさん 『投稿者』は誰でしょう?特定の人であれば mizさんの書かれているように post_authorを設定すればいいだけです。
退会済みユーザー

退会済みユーザー

2017/03/07 12:48

miz様: ご回答ありがとうございます。 言葉足らずで申し訳ございません。 氏名や住所等を保存したいのですが 投稿レベルを『投稿者』として保存したいという意味です。
退会済みユーザー

退会済みユーザー

2017/03/07 12:53

miz様、kei344様 ご回答ありがとうごじます。 wp_insert_post()のパラメータpost_authorを失念しておりました。 解決できました。長々とありがとうございました。
退会済みユーザー

退会済みユーザー

2017/03/07 13:19

編集履歴が記録されているので、質問文を書き換えても意味ないんだけどなあ。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問