意外とかんたんなWordPressプラグインの作り方

2018/03/23更新 カテゴリー:開発奮闘記 タグ:
  • このエントリーをはてなブックマークに追加

いやー今年の夏は暑いですね。福岡は昨日は37度もありました。暑すぎるのは困ったものですが、一方で暑い時に飲むビールもたまらないものがあります。

さて、今回は「Nginx+Apacheの環境にて、PHPでクリアをキャッシュする」で作ったPHPをプラグインにして、WordPress管理画面からワンクリックで使えるようにします。

SPONSOR

1.プラグインディレクトリ内にファイル作る

/wp-content/plugins/内に新規フォルダ、その中にPHPファイルを作ります。今回は「clear」というフォルダを作って、その中に「clear.php」というPHPファイルを作りました。

2.ヘッダー情報を入れる

「clear.php」に、以下の情報を入力します。

<?php
/*
Plugin Name: ClearCache
Plugin URI: http://plus.vc
Description: nginxのキャッシュクリア
Version: 1.0.0
Author: PLUS
Author URI: http://plus.vc
*/
?>

そうすると、WordPress管理画面のプラグインページにでてきます。
clearcache

SPONSOR

3.管理メニューに追加する

次に、処理内容を書いていきます。下のコードは、管理メニューに入口のリンクを追加しています。add_submenu_pageはサブメニュー追加の関数です。メニューの追加についての詳しい情報はこちら

//管理メニューに追加するフック
add_action('admin_menu', 'clear_menu');

//add_submenu_page('親メニューのファイル名', 'HTMLのページタイトル', 'メニュータイトル', '必要なユーザーレベル', 'コンテンツ表示PHPファイル', 'コンテンツ表示関数');
function clear_menu() {
  add_submenu_page('post-new.php', 'nginxクリアキャッシュ', 'nginxクリアキャッシュ', 8, __FILE__, 'menu_function');
}

//この内容が、メニュークリック時に表示されます
function menu_function() {
  echo '<div class="wrap">';
  echo '<p><a href="(環境によってパスを設定してください)cacheclear.php" target="_blank">キャッシュクリア</p>';
  echo '</div>';
}

4.処理内容を記述する

<?php
require_once("(環境によってパスを設定してください)wp-admin/admin.php");
exec("sudo sh nginx_clear.sh");
?>
clear cache

require_onceは、WordPressにログインしているかどうかチェックするファイルで、標準でWordPressに入っています。これを入れることで、ログインしていないと、アクセスできなくなります。

どうだったでしょうか。受託案件でWordPressを導入することもあると思いますが、オリジナルシステムと連動させる場合にも使えるテクニックです。

フリーランスエンジニアの稼ぎ方

  • このエントリーをはてなブックマークに追加
SPONSOR

PROFILE

プロフィール

入江 慎吾
自分が作ったサービスで生きていく。同じゴールを目指すサービス開発集団「入江開発室」を運営(現在約280名) / 個人間スキルシェアサービス「MENTA」は約1ヶ月で売上100万円を達成。1日で100社が利用した「JobTag」など多数開発
(詳しいプロフィール)

PRODUCT

イリテクで開発したプロダクト

RELATION

関連する記事

SPONSOR

TAG

タグから記事をさがす