勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ。

WordPressでオリジナルのプラグインを作成する方法

   2024/04/16  WordPress

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テーブルを使う形で良さそう。

ログ保存みたいにカラムが増えてくるような機能は別途テーブル作成が必要そうなので、今度はそっちも作ってみる。

 - WordPress

  関連記事

WordPressでテーマファイル内で共通の変数を設定及び使用する方法

WordPressでテーマ内の共通変数を設定し使用したかった。例えば記事一覧ペー ...

Advanced Custom Fieldsでチェックボックスの記事を取得

Advanced Custom Fieldsでチェックボックス設定しているカスタ ...

WordPressでCSSとHTMLコーディングデータから自作テーマを作成する方法

CSSとHTMLコーディングデータがあり、それをWordPressのテーマに反映 ...

WordPressで自動でmetaタグのkeywordsとdescriptionを表示

metaタグのkeywordsとdescriptionにて、基本的にはAll i ...

WordPressで画像にカテゴリを設定し、記事投稿の際の画像選択時に指定したカテゴリの画像のみ表示させる方法

WordPressのメディアライブラリに画像を沢山登録していると、記事投稿の際の ...