mirror of
https://github.com/inretio/WordPress-Plugin-Boilerplate
synced 2024-12-22 11:53:53 +02:00
46c78c9dc5
According to http://codex.wordpress.org/Function_Reference/plugin_dir_path, plugin_dir_path gets the filesystem directory path with trailing slash. Even tho two slashes will not cause an error, the extra slash can be removed.
90 lines
2.6 KiB
PHP
90 lines
2.6 KiB
PHP
<?php
|
|
/**
|
|
* The WordPress Plugin Boilerplate.
|
|
*
|
|
* A foundation off of which to build well-documented WordPress plugins that
|
|
* also follow WordPress Coding Standards and PHP best practices.
|
|
*
|
|
* @package Plugin_Name
|
|
* @author Your Name <email@example.com>
|
|
* @license GPL-2.0+
|
|
* @link http://example.com
|
|
* @copyright 2013 Your Name or Company Name
|
|
*
|
|
* @wordpress-plugin
|
|
* Plugin Name: TODO
|
|
* Plugin URI: TODO
|
|
* Description: TODO
|
|
* Version: 1.0.0
|
|
* Author: TODO
|
|
* Author URI: TODO
|
|
* Text Domain: plugin-name-locale
|
|
* License: GPL-2.0+
|
|
* License URI: http://www.gnu.org/licenses/gpl-2.0.txt
|
|
* Domain Path: /languages
|
|
* GitHub Plugin URI: https://github.com/<owner>/<repo>
|
|
*/
|
|
|
|
// If this file is called directly, abort.
|
|
if ( ! defined( 'WPINC' ) ) {
|
|
die;
|
|
}
|
|
|
|
/*----------------------------------------------------------------------------*
|
|
* Public-Facing Functionality
|
|
*----------------------------------------------------------------------------*/
|
|
|
|
/*
|
|
* TODO:
|
|
*
|
|
* - replace `class-plugin-name.php` with the name of the plugin's class file
|
|
*
|
|
*/
|
|
require_once( plugin_dir_path( __FILE__ ) . 'public/class-plugin-name.php' );
|
|
|
|
/*
|
|
* Register hooks that are fired when the plugin is activated or deactivated.
|
|
* When the plugin is deleted, the uninstall.php file is loaded.
|
|
*
|
|
* TODO:
|
|
*
|
|
* - replace Plugin_Name with the name of the class defined in
|
|
* `class-plugin-name.php`
|
|
*/
|
|
register_activation_hook( __FILE__, array( 'Plugin_Name', 'activate' ) );
|
|
register_deactivation_hook( __FILE__, array( 'Plugin_Name', 'deactivate' ) );
|
|
|
|
/*
|
|
* TODO:
|
|
*
|
|
* - replace Plugin_Name with the name of the class defined in
|
|
* `class-plugin-name.php`
|
|
*/
|
|
add_action( 'plugins_loaded', array( 'Plugin_Name', 'get_instance' ) );
|
|
|
|
/*----------------------------------------------------------------------------*
|
|
* Dashboard and Administrative Functionality
|
|
*----------------------------------------------------------------------------*/
|
|
|
|
/*
|
|
* TODO:
|
|
*
|
|
* - replace `class-plugin-admin.php` with the name of the plugin's admin file
|
|
* - replace Plugin_Name_Admin with the name of the class defined in
|
|
* `class-plugin-name-admin.php`
|
|
*
|
|
* If you want to include Ajax within the dashboard, change the following
|
|
* conditional to:
|
|
*
|
|
* if ( is_admin() ) {
|
|
* ...
|
|
* }
|
|
*
|
|
* The code below is intended to to give the lightest footprint possible.
|
|
*/
|
|
if ( is_admin() && ( ! defined( 'DOING_AJAX' ) || ! DOING_AJAX ) ) {
|
|
|
|
require_once( plugin_dir_path( __FILE__ ) . 'admin/class-plugin-name-admin.php' );
|
|
add_action( 'plugins_loaded', array( 'Plugin_Name_Admin', 'get_instance' ) );
|
|
|
|
}
|