意外とかんたんな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

プロフィール

入江 慎吾/サービス開発だけで生きていく
自分のサービスだけで自由に生きる。勢いで受託開発をすべてやめて、サービスだけ作って生きていくことを決めたフリーのエンジニア。得意を教えて副業にできるMENTAを開発中! (詳しいプロフィール)
WEBサービス・アプリ開発に役立つ情報をイリテクの入江がお届けします。プログラミング、UI/UXデザイン、SNS・ブログマーケティングなど、プロダクト開発だけで自由に生きていくための実践的な情報を配信しています。

PRODUCT

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

RELATION

関連する記事

SPONSOR

TAG

タグから記事をさがす