WordPressカスタム〜ダッシュボードのプラグイン画面作成〜

前回は、プラグイン自体の作成を行いました。単純にプラグインを有効にしてダッシュボードにメニューが追加されることを確認しました。

プラグイン画面の中身

現状では、「Hello World」的な感じで、適当な文字列を表示するだけです。これでは意味がないので中身を実装していきます。

現状確認

WordPressのフォルダ(プラグイン)に以下のような
「CustomQuestionary」というフォルダがあります。

これが作成中のプラグインで、ダッシュボードには下のように表示されています。

プラグインのフォルダにある「index.php」は下のようなコードを実装しました。

// 表示する内容
function helloCustomQuestionary() {
    echo "
"; } // ダッシュボードに追加するための関数 function addCustomQuestionary() { // ダッシュボードにこの表示が出るように追加する //wp_add_dashboard_widget( 'my_dashboard_widget', 'Featured Dashboard Page', 'helloCustomQuestionary' ); add_menu_page( 'Test Plugin', 'CustomQuestionary', 'manage_options' , 'test-plugin' , 'helloCustomQuestionary' ); } // 管理メニューを表示した時に //add_action('wp_dashboard_setup', 'addCustomQuestionary'); add_action('admin_menu', 'addCustomQuestionary' ); do_action( 'addCustomQuestionary' );

ライセンスとか、プラグインのコメントとかは割愛しています。

そして、画面上に表示されている部分は関数「helloCustomQuestionary()」の中に実装しています。

プラグイン画面の作成

今回の作成するものは「カスタム・アンケート」プラグインなので、仕様を確認します。

仕様
  1. アンケートのボタンを投稿画面に追加する
  2. クリックされたアンケートボタンの集計を行いグラフに表示する
  3. アンケートボタンは質問と回答を1セットにする
    ※アンケートの質問は以下のような形で行う
    [Ex]
    Question: この記事はわかりやすかったですか?
    Answer: 「わからない」「わかりづらい」「普通」「わかりやすい」「大変わかりやすい」
    回答はボタン押下で集計します。

複数の質問を行いたい場合は、QuestionとAnswerをバラバラに記事の中に配置する。

ポイント

アンケートを取る時に入力数が多いと回答が面倒なので、QAを1つずつ行えるようにする。

ユースケース

・ダッシュボードにて、アンケートの作成を行う
・QuestionとAnswerをセットで作成する
・アンケート挿入部分を投稿に記載する
-> TypeA: 投稿(POST)に直接アンケート挿入用のHTMLタグを挿入する
-> TypeB: アンケートを挿入するスタイルを指定する(指定の投稿以外にも挿入できる)

以上のように考えています。

実装に関して

うまく行けるかどうか不安な部分がありますが、不可能ではないと思いますので、こんな感じで実装を進めていこうと思います。

でわでわ。。。


関連ページ

  1. PHP PDO 〜MySQLにアクセスする〜
  2. PHP Ajax 〜DBに登録したデータを受信する〜
  3. Google Maps API PHP連携 〜マップ情報をDBに登録する〜
  4. PHP Image File 〜iPhoneやAndroidでの画像送受信の問題〜
  5. AngularJS Routing 〜PHPをWeb APIにする〜
  6. WordPress PHPカスタム〜根本的に見た目を変える〜
  7. WordPress PHPカスタム〜根本的に見た目を変える2〜
  8. Eclipse PHPプラグイン 〜ElipseでWordPress環境を構築〜
  9. WordPress テスト実装 〜heade-test.phpを表示〜
  10. AngularJS + PHP 〜WordPressと連携する〜
  11. AngularJS + PHP 〜AngularJSの実装〜
  12. AngularJS + PHP 〜AngularJSの実装2〜
  13. WordPress 処理解析 ~index.phpを眺める~