- 左メニューに項目を追加
- 左メニューの項目を非表示に
- 設定⇒一般に項目を追加
などはよく見かけるけれど、
「任意の場所にメニュー項目を追加して、設定を保存して他の場所から呼び出す」となると、まるまる紹介している例は多くなかった。
やろうとしているのは、「プラグインの作成」に近いので、その辺の記事を漁る。
下記の記事が激しく参考になった。感謝。
【WordPressプラグイン開発】管理画面にメニュー・サブメニューを追加する方法
【WordPressプラグイン開発】独自設定ページでオプションを追加・変更する方法
で、
- 「外観」の上に「独自メニュー項目」を追加して、ページを表示、
- テキストエリアやチェックボックスを設置
- それぞれの項目を「option」としてデータベースに保存
ここまで出来ました。
あとは、使いたい場所に出力したり、条件分岐させたりすれば完了なのですが、ここでつまづいた。
テキストの出力は記事通りでも、「get_option」関数を設定しておいたりでも、どうにでも出力できるのですが、チェックボックスやラジオボタンでの条件分岐が動かない。
この手の条件分岐解説記事は、ほとんどがメールフォームなどに渡す処理が前提。こんな感じの参考例が多い。
if (isset($_POST['radio1']))
今回の例では、渡す相手が「〇〇〇.php」ではなくデータベース。なので?かはわからないが、これでは動かない。
これに気が付かず悩むこと数時間。
$radio1a = get_option(radio1); if($radio1a == 1)
単純に「get_option」で取り出してから比較すればいいのでした。
POSTさんに、「私に聞かれても困る」
と言われたような気がしました。