#wacja2012『WordPress』と聞くと、ブログや企業などのウェブサイト、ポータルサイトなど、いわゆる日本で「ホームページ」と呼ばれるモノを連想される方が多いと思いますが、WordPressは非常に柔軟に設計されていますので、カスタマイズによって様々な事が出来ます。゚д゚)”“WordPressってこんな事も出来るんですよ”って感じでご紹介したいと思います。2012に参加しています。「クリスマスまでの間、みんなで順番にWordPressの記事を書こう」っていうイベントです。依頼を受けた企業から、積荷の出港日や到着日他、様々な問い合わせが多く対応に時間がかかる。複数の事業所があるが、全ての事業所に全ての伝票が揃っているわけではないので、問い合わせがあっても該当の伝票が事業所内に無い事もある。クライアントの要望どこの事業所からでも全てのデータが閲覧・管理出来る伝票番号や顧客名などで検索すると該当する伝票情報がすぐに調べられるそもそも顧客が自分で伝票番号などを入力したら閲覧出来るようにしたい(問い合わせがなくなるので、それに対応する工数が削減出来る)顧客にとっても自社のスタッフにとっても出先などでも確認出来るようにスマートフォンでも見れるようにしたいやりましょう!WordPressの出番です。「投稿」を「伝票」として扱う普通ならWordPressの「投稿」はブログの記事などを書くのに使いますが、この「投稿」を「伝票」として扱います。一つの「投稿」が一枚の「伝票」の代わりになるわけです。限られた入力欄しかありませんが、WordPressはカスタマイズして任意の入力欄を追加する事が出来ます。Fields」を使っています。カスタムフィールドをごにょごにょする場合は超便利なプラグインなので是非使ってみて下さい。して、伝票を一つの投稿とすると下記のような感じになります。欲しいという要望がありました。WordPressには標準で記事を検索する機能がありますので、それを利用します。下記のソースをheader.phpやらindex.phpに書けば伝票検索機能が出来ますね。Everything」を使って、カスタムフィールドも検索対象になるようにすると、より使い勝手がよくなります。この状態だと大きな問題があります。顧客がこのサイトを使って自分で検索する時、伝票番号の入力ミスや、意図的に他社名を入力して検索すると、他社の取引状況が閲覧出来てしまいます。その問題を解消する為に、WordPressのユーザー管理機能を使います。ユーザー管理機能で「顧客情報の管理」と「伝票情報の表示制限」をする顧客情報の管理WordPressで記事を投稿するにはユーザーIDを発行して、管理画面にログインして投稿するわけですが、このユーザー管理機能を使います。一つのユーザー情報に一つの顧客情報を登録するといった具合にします。ありますが、本件では顧客に投稿(伝票)内容を編集させたりはしないので、ここでは「寄稿者」として登録します。顧客情報管理として使うので、電話番号やFAX番号などが登録できると便利ですね。下記のような感じで書くと、ユーザー情報画面にいろいろなフィールドが追加出来ます。$contactmethods;}add_filter(‘user_contactmethods’,’update_profile_fields’,10,11);[/sourcecode]ユーザー情報入力画面イメージ投稿(伝票)とユーザー情報(顧客情報)を紐付けるそして、WordPressの「投稿」には、どのユーザーがその記事を作成したのかを選択する「作成者」という項目のプルダウンがあります。今回の件では「投稿」=「伝票」ですので、WordPressのユーザーとして登録した顧客企業を、投稿(伝票)の「作成者」として扱う事により「伝票」と「顧客情報」が紐付いた状態でWordPressのデータベースに登録されます。表示をログインユーザーに限定そもそも外部の人間が勝手に取引情報を見れてはまずいので、まずはログインしていないユーザーがアクセスして来たら全てログイン画面にリダイレクトさせます。functions.phpに以下のように書きます。顧客がログインしている場合は、その顧客が「作成者」として登録されている投稿(伝票)だけを表示させなくてはなりません。顧客がログインしている場合はその顧客の伝票だけが表示となります。?&gt;&lt;p&gt;該当する情報が登録されていません。Editor」などで、出来る事を制限します。問い合わせフォームを応用したメール通知システムさて、そんな伝票ですが、今までは伝票が発行されると、その伝票をFAXで送信していました。今回のシステムでは投稿の詳細ページが伝票なので、それを印刷してFAXで流せば良いのですが・・・システムからメールで通知したいですよね!「投稿をメールで通知」と言うと、投稿されたら自動的にユーザーにメールが送信されるメルマガ系のプラグインを連想されますが、以下の欠点があります。伝票の「作成者」として紐付いている顧客にだけ通知したいのに全員に送信されてしまう。投稿された時だけにメール通知するのではなく。一度情報公開して通知した後にも、請求書や正規の積荷証明書が発行された段階で、そのファイルを追加でアップロードするので、任意のタイミングで複数回の通知を送信したい。なると、メルマガプラグインでは対応が難しい。7」!!!!通常問い合わせフォームと言えば、閲覧者がサイト管理者に向けてメールを送信するために使うものですが、ここでは逆に、サイト管理者がユーザーに向けてメールを送信するために使います。各投稿(伝票)には作成者ユーザー情報(顧客情報)が紐付いています。);[/sourcecode]と書けば取得出来ますので、この顧客のメールアドレスや、今表示している伝票詳細ページのURLを問い合わせフォームに投げます。以下のように記述して、受け渡し項目を設定します。11);[/sourcecode]伝票詳細ページからフォームページにパラメーターを投げる伝票詳細ページからフォームが設置してあるページへのリンクボタンのリンク先URLに、受け渡し用のパラメーターをくっつけます。フォーム項目作成欄のショートコードで、function.phpで設定したパラメーター名(=URLにくっついているパラメーラ名)をつけておけば、フォームが受け取れます。画面の掲載許可をいただきましたので、実際の画面を公開いたします。自分にとっても勉強になる案件でした。3WM様及び天空広告様、ありがとうございます!まとめこんな感じで、WordPressも使い方によってはウェブサイトというより、管理システムっぽい使い方も出来るのが面白い所かなと思います。ちなみに、伝票の項目には入金済みか未入金かの選択項目があって、未入金で入金期日を過ぎると自動的に伝票の文字色が変わる機能など、他にもいろいろ小技を入れてます。いやぁ、WordPressって本当にいいもんですね!それではまたどこかでお会いしましょう。明日は@twit_natashaさんです。コンサルティング〜WordPressを中心としたシステム開発まで幅広く携わる。ベースのシンプルでカスタマイズしやすいWordPressテーマです。とセットで使う事でビジネスサイトにもブログにも活用できます。【簡易会員サイト向け】会員番号など特定多数のIDを持ったユーザーのみに閲覧制限をかける。