質問: 表題の件について。 有識者の方がいれば教えていただければと思います。 現在wordpressのContact Form 7を利用しお問い合わせフォームを作成しております。 お問い合わせフォームから送信されたメッセージはプラグインのFlamingoを利用して、 送信者のアドレス帳とメッセージの管理を行う予定です。 Flamingoのアドレス帳にタグを記入しエクスポートを行った場合、 「メール・フルネーム・姓・名」のみが出力されました。 タグもエクスポートを行いたい場合どのように設定を行えば宜しいでしょうか。 またアドレス帳にチェックボックスを設置したいのですがどのようにカスタムを行えば良いのかご助言いただけると幸いです。 以上です 宜しくお願い致します。 現在はタグの欄にテキストを打ち込みで男女の区別をしようと思っています。 最終的にCSVでタグが吐き出されれば問題ないのでチェックボックスでなくても良いのですが、 出来るのであればチェックボックを利用したいと思っています。 ![イメージ説明](https://teratail-v2.storage.googleapis.com/uploads/contributed_images/76284eaffd0be41e1bab54b7a8484cb1.png) ![イメージ説明](https://teratail-v2.storage.googleapis.com/uploads/contributed_images/d8b74ac1ef4efd27be5aeea6ace414fc.png)
回答: flamingo のソースコード flamingo/trunk を眺めてみました。 > > タグもエクスポートを行いたい場合どのように設定を行えば宜しいでしょうか。 > > > プラグイン本体のコードで、CSV出力するデータを出力していて、設定で変更する方法は用意されていませんので、プラグイン本体を直接書き換える以外の方法は難しいと思います。 admin/admin.php と includes/class-contact.php 等を改造する必要があると思います。 > > またアドレス帳にチェックボックスを設置したいのですがどのようにカスタムを行えば良いのかご助言いただけると幸いです。 > > > チェックボックスを追加して何をするのでしょうか? チェックボックスで実現したい機能によって変わると思いますが、アドレスの一覧画面は、プラグイン本体から直接出力されているので、こちらもおそらくプラグイン本体を直接改造する必要があると思います。 なお、プラグイン本体のコードを変更すると プラグインのアップデートで変更部分が消えたり、WordPressのアップデートで動作しなくなったりする可能性もありますので、WordPressやプラグインの更新時の対応等も含めて、対応方法をよく考えてから実施されることをお勧めします。 (追記) ちょっと時間ができたので、タグを CSV に出力するためのヒントになる部分だけを記載しておきます。 ソースコードを見ると タグは、タクソノミー `flamingo_contact_tag` のタームとして登録されていますので `get_the_terms( POST-ID, 'flamingo_contact_tag' )` で取得できます。 最小限の変更で対応するとすれば、下記のような感じでしょうか。 実際のところ、ほぼ答えですが... どこを変更するかは、考えてください。 ``` foreach ( $items as $item ) { $terms_str = ""; $myterms = get_the_terms( $item->id, 'flamingo_contact_tag' ); foreach( $myterms as $myterm ){ $terms_str .= $myterm->name ." "; } $row = array( $item->email, $item->get_prop( 'name' ), $item->get_prop( 'first_name' ), $item->get_prop( 'last_name' ), $terms_str, ); echo "\r\n" . flamingo_csv_row( $row ); } ``` まあ、正直なところ・・・ 自分でやるなら WordPress の管理画面でやらずに CSV 保存する php スクリプトを作成すると思います。(その場合はプラグインの修正は不要なので...)