[WordPress] 自作プラグインの設定など

公開日: : Web制作, wordpress

プラグインを自作してみる

WordPressでプラグインを作成する際の設定(フック)などをまとめてみました。
ご参考になれば幸いです。

作成するディレクトリはwp-conent/pluginsの直下にプラグインフォルダを作成し、その中にプラグインファイルであるphpファイルを置きます。

プラグインヘッダーコメント

/*
 Plugin Name: Sample Plugin
 Plugin URI: プラグインURL
 Description: プラグインの説明文です。
 Author: プラグイン作成者
 Version: 1.0
 Author URI: プラグイン作成者URL
*/

上記コメントをプラグインファイルに記述するとプラグイン一覧ページに表示されます。
スクリーンショット_2014-10-03_13_34_35

Javascriptファイルの登録

add_action('admin_enqueue_scripts', 'admin_scripts');
function admin_scripts($hook) {

 wp_enqueue_script('sample-script',
 plugins_url('js/sample.js', __FILE__),
 array(), false, true);
}

Javascriptファイルの登録です。wp-content/plugins/プラグインフォルダ/js/sample.jsを格納した例です。
wp_enqueue_scriptによりファイル読み込みが行われます。

CSSファイルの登録

add_action('admin_print_styles', 'admin_styles');
function admin_styles($hook) {
 global $wp_scripts;
 $ui = $wp_scripts->query('jquery-ui-core');

 wp_enqueue_style('jquery-ui-smoothness',
 "//ajax.googleapis.com/ajax/libs/jqueryui/{$ui->ver}/themes/smoothness/jquery-ui.min.css", false, null);
}

CSSファイルの登録です。例ではjquery-uiのバージョンをDB問い合わせをし、CSSを読み込んでいます。
wp_enqueue_styleによりファイル読み込みが行われます。

ショートコードの登録

add_shortcode('sample-shortcode', 'add_sample_shortcode');
function add_sample_shortcode($atts) {
 $args = shortcode_atts(array(), $atts);
 do_something($args);
}
function do_something($args) {
 // ショートコードの処理
}

ショートコードの登録です。この場合は[sample-shortcode]という形のショートコードになります。

有効化のときの初期処理

if (function_exists('register_activation_hook')) {
 register_activation_hook(__FILE__, array('sample_activate'));
}
function sample_activate() {
 // プラグイン有効化時の処理
}

プラグインが有効化になった場合の処理です。主にデータベース作成や変数の設定などの初期処理を実行します。

プラグイン削除時の処理

if (function_exists('register_uninstall_hook')) {
 register_uninstall_hook(__FILE__, 'sample_uninstall');
}
function sample_uninstall() {
 global $wpdb;
 $wpdb->query("DROP TABLE IF EXISTS wp_sample_table");
 delete_option('sample_plugin_version');
}

プラグインが削除されたときの処理です。
例では、wp_sample_tableを削除し、wp_optionsに登録された’sample_plugin_version’というデータを削除しています。

まとめ

フックの詳細やライセンス規約などはCodexなどを参考にしてください。
WordPressのバージョンアップにより、やり方が変わるかもしれませんので。

ad

関連記事

[jQuery] FlickerPlateを紹介します。

かっこいいプラグインで、フリックにも対応します。 Flickerplateは、シンプルでとても使い

記事を読む

[HTML] 初心者を脱却するためのHTMLの心構え!

デザインを見たら、まずレイアウトの方法をイメージしよう 僕は、基本的にデザインを頂いたときに、すぐ

記事を読む

[Dreamweaver] コーディングを早くする5つの方法

コーディングは、早くなる! 普段、Dreamweaverを使っている人で、SassやZenコーディ

記事を読む

[html5] おさらいがてらWordPressのテーマを作るためにHTML5で一から作るよ![第4回]

完全に放置してました、僕です。 別に忘れていた訳じゃないんですが、時間がありませんでした。

記事を読む

[Dreamweaver] テンプレートの入れ子

テンプレートは入れ子に出来る! Dreamweaverのテンプレートは、ベースを作り、さらにそのベ

記事を読む

[jQuery] OSX風のスクロールバーにするプラグイン!

trackpad-scroll-emulator trackpad-scroll-emulator

記事を読む

[jQuery] 360°回転させたり、マウスでシーンを移動するプラグイン

rollerblade-js Rollerbladeを使えば、Webサイトに360°回転させてプロ

記事を読む

[CSS] CSS3のtransitionを使ってみよう!

CSS3のTransitionは、そんなに難しくない! CSS3では、CSSのマークアップだけでア

記事を読む

[WordPress] 管理画面にテーブル(WP_List_Table)を表示する

WP_List_Table 管理画面で標準テーブルを表示したい場合は、WP_List_Tableを

記事を読む

[Dreamweaver] テンプレート機能初級編!

まずはベースとなるHTMLを作成しましょう。 Dreamweaverのテンプレートを作るには、ベー

記事を読む

ad

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

ad

[PHP] curl転送してみる(googleに)

curlでgoogle画像検索APIにアクセスしてみます。 cu

[PHP] PDOでMySQLの接続確認をする

PDO PHPでMySQLに接続する際には、mysql_connec

[PHP] ランダムな英数字を生成する

便利系メソッド 今回はPHPでランダムな英数字を作成してみます。

[Swift] プロパティリスト(plist)の値を取得

plistからデータを取得してみます。 こちらのエントリーも参考にし

[Swift] Asset Catalogについて

XCode5から追加されたAsset Catalog。 いままで標準

→もっと見る

  • 1978年の七夕生まれ。 25才でweb業界の門を叩き、28才でフリーランスに。 現在は、フリーランスでマークアップ中心に、wordpressのカスタマイズやデザインをしております。 また、iPhoneアプリの開発もしております。
PAGE TOP ↑