WordPressでオリジナルのプラグインを作成する方法
2024/04/16
WordPressでオリジナルのプラグインを作成する方法を以下にメモ。
任意のディレクトリと1つ以上のphpファイルを作成
ディレクトリ名とphpファイルの名前を合わす必要は無し。尚、phpファイルには以下を記述しないといけない。
Plugin Name: プラグイン名。WordPressのプラグインページの「プラグイン」部分に表示される。 Plugin URI: プラグインを置いているページのURL Description: プラグインの説明。WordPressのプラグインページの「説明」部分に表示される。 Author: 作者名 Version: バージョン Author URI: 作成者HPのURL
ここのメタ情報でWordPressはプラグインを認識する模様。
フックと処理内容を書く
ブラウザ画面に送信される前に何か処理したい場合は以下のような形で記述する。
add_filter('the_content', 'hogehoge');
function hogehoge(){
//処理内容
}
管理画面内で何かしたい場合は以下のような形で記述する。
add_action('admin_menu', 'adminPage');
function adminPage() {
add_menu_page(
'ニュース設定', //メニューが有効になった時に表示されるHTMLのページタイトル用テキスト。
'ニュース設定', //管理画面のメニュー上での表示名。
'level_8', //このメニューページを閲覧・使用するために最低限必要なユーザーレベル。
'simpleNewsOptionPage', //メニューページのURL。
'optionPage' //メニューページにコンテンツを表示する関数。
);
}
optionテーブルを使ってデータ保存
データ更新や挿入したい時は以下を記述する。
update_option('key', 'val');
既に入っている内容と更新した内容が同一の場合はfalseが返ってくる。
データ取得したい時は以下で取得できる。
get_option('key');
その他
データベースは使いたいけどカラム数は変わらない場合、例えば設定の管理画面関連のようなものであればoptionテーブルを使う形で良さそう。
ログ保存みたいにカラムが増えてくるような機能は別途テーブル作成が必要そうなので、今度はそっちも作ってみる。
関連記事
-
-
Polylangのスイッチャーでクエリ(GETパラメータ)を引き継ぐ方法
WordPressで多言語サイトを作成するにあたりPolylangというプラグイ ...
-
-
PHP8系で「Warning: Attempt to read property "xxxxxx" 」エラーの対応方法
PHP8系&WordPress6.4.3で「Warning: Attem ...
-
-
WordPressにて指定したユーザでログイン中の場合のみ表記を変更する方法
WordPressを用いたサイトを開発中の際に指定したユーザでログイン中の場合に ...
-
-
Contact form7で送信数を測定(トラッキングタグ)
contact form7でフォーム送信が完了した時点で計測されるようにトラッキ ...
-
-
WordPressの5系から搭載されたブロックエディタ(Gutenberg)を元に戻す方法
WordPressを5系にアップデートしたところ記事投稿ページのエディタが大幅に ...