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

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

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

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

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Q&A

1回答

3381閲覧

WordPressの管理画面にオリジナルの設定ページを作りたいです。

jyun_plj

総合スコア6

WordPress

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

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

0グッド

0クリップ

投稿2018/03/28 00:34

初めて利用をいたしますので説明不足などありましたら申し訳ありません。
WordPressの管理画面にオリジナルの設定ページを作りたいです。
WordPressもphpも初心者レベルです。
いろいろ検索をして設定の項目が1つの物はできたのですが、検索の仕方が悪いのか、とても古い情報やプラグインの場合のページしか見つからず、以下のコードもこれで正しいのかどうか分からない状態です。

【functions.php】

php

1add_action('admin_menu', 'add_test_admin_menu'); 2function add_test_admin_menu() { 3 add_menu_page( 'テスト設定', 'テスト設定', 'manage_options', 'test_admin', 'test_admin_menu_page', get_template_directory_uri().'img/icon.png', 81 ); 4} 5function test_admin_menu_page() { 6 require TEMPLATEPATH.'/test_config.php'; 7}

【test_config.php】

php

1<div class="wrap"> 2<h2>設定</h2> 3<?php 4 add_option('test_1'); 5 if ($_REQUEST['test_1']) update_option('test_1', $_REQUEST['test_1']); 6?> 7<form method="post" action="admin.php?page=test_admin"> 8 <table class="form-table"> 9 <tr> 10 <th><label for="test_1">テスト</label></label></th> 11 <td><input name="test_1" type="text" value="<?php echo get_option('test_1'); ?>" class="regular-text"></td> 12 </tr> 13 </table> 14 <p class="submit"><input type="submit" name="submit" id="submit" class="button-primary" value="変更を保存"></p> 15</form> 16</div>

一応、この設定画面で文字を入力して【echo get_option('test_1');】としたらちゃんと出力できました。

分からないところは3点あるのですが、
1つ目は【設定項目の増やし方】で、上のコードが合っているとしたら、

php

1<?php 2 add_option('test_1'); 3 add_option('test_2'); 4 add_option('test_3'); 5 add_option('test_4'); 6 add_option('test_5'); 7 if ($_REQUEST['test_1']) update_option('test_1', $_REQUEST['test_1']); 8 if ($_REQUEST['test_2']) update_option('test_2', $_REQUEST['test_2']); 9 if ($_REQUEST['test_3']) update_option('test_3', $_REQUEST['test_3']); 10 if ($_REQUEST['test_4']) update_option('test_4', $_REQUEST['test_4']); 11 if ($_REQUEST['test_5']) update_option('test_5', $_REQUEST['test_5']); 12?>

として増やしていけばよいのでしょうか?

2つ目は【空欄ではないかの判定方法】です。
空欄ではない場合のみ出力するには以下で合っていますでしょうか?

php

1<?php 2 if (empty ($test_1) ) { 3 echo get_option('test_1'); 4 } 5?>

3つ目は、出来なければ出来ないで良いのですが、アイコンを画像ではなくオリジナルのウェブフォントにする方法が全く分かりません。
IcoMoonでsvgからオリジナルのウェブフォントを作ったのですが、
【get_template_directory_uri().'img/icon.png】
のところを
<i class="icon-test"></i>
としてみたのですが、ソースを見ると
【<img src="<i class="icon-test"></i>" alt="" />】
とimgタグが付いており、フォントとして表示させることが出来ませんでした。

どれか1つでも分かる方がみえましたら、どうか、お知恵を拝借願えませんでしょうか?
よろしくお願いいたします。

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

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

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

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

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

guest

回答1

0

別質問にある参考サイトが「管理画面にオリジナルの設定ページを作る」なのでお勧めします。

【WordPressでちょっとした管理ページを作成するコード - Qiita】
https://qiita.com/shin1kt/items/76fb5ec7e2f754b9ada7

【WordPress Option Page Generator – Jeremy Hixon】
https://jeremyhixon.com/tool/wordpress-option-page-generator/


アイコンを画像ではなくオリジナルのウェブフォントにする方法が全く分かりません。

WordPress 側が画像を指定するように作っているので、設定でできるような簡単な方法はありません。
自分がするなら、管理画面のメニューにはそれぞれクラスが振られているのでそれを利用してCSSで追加します。

投稿2018/03/30 15:01

kei344

総合スコア69364

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問