Wordpress Plugin Standards:
Header Requirements
Define Basic Constant value
/** * Plugin Name: Example Plugin * Plugin URI: https://example.com/plugins/the-basics/ * Description: Basic WordPress Plugin Header Comment * Version: 1.0.0 * Author: Chirag Prajapati * Author URI: https://chrgprajapati.blogspot.com * License: GPL2 * License URI: https://www.gnu.org/licenses/gpl-2.0.html * Text Domain: example * Domain Path: /languages */
Define Basic Constant value
define( 'EX_VERSION', '1.0' ); define( 'EX_PLUGIN_BASENAME', plugin_basename( __FILE__ ) ); define( 'EX_PLUGIN_DIR', untrailingslashit( dirname( __FILE__ ) ) ); define( 'EX_PLUGIN_URL', untrailingslashit( plugins_url( '', __FILE__ ) ) ); define( 'EX_CONTENT_URL', content_url( ));Above five is basic but you can define the extra variable as you want. like,
define( 'EX_LOG_DIR', WP_CONTENT_DIR.'/uploads/ex_logs/'); define( 'EX_LOG_file', EX_LOG_DIR.'/ex_log.txt' );Call Required files
require_once EX_PLUGIN_DIR. '/ex_function.php';Activation / Deactivation Hooks
if ( !function_exists( 'ex_setup_post_type' ) ) {
function ex_setup_post_type() {
// register the "book" custom post type
register_post_type( 'book', ['public' => 'true'] );
}
}
add_action( 'init', 'ex_setup_post_type' );
if ( !function_exists( 'ex_install' ) ) {
function ex_install() {
// trigger our function that registers the custom post type
ex_setup_post_type();
// clear the permalinks after the post type has been registered
flush_rewrite_rules();
}
}
register_activation_hook( EX_PLUGIN_BASENAME, 'ex_install' );
if ( !function_exists( 'ex_deactivation' ) ) {
function ex_deactivation() {
// unregister the post type, so the rules are no longer in memory
unregister_post_type( 'book' );
// clear the permalinks to remove our post type's rules from the database
flush_rewrite_rules();
}
}
register_deactivation_hook( EX_PLUGIN_BASENAME, 'ex_deactivation' );
Folder Structure
/plugin-name
plugin-name.php
uninstall.php
/languages
/includes
/admin
/js
/css
/images
/public
/js
/css
/images
Thanks for sharing this information.
ReplyDeleteWhat is WordPress
"Thank you for breaking this down so well! This post is truly valuable."
ReplyDeleteGreat insights on WordPress Plugin Standards! Ensuring quality, security, and consistency in every plugin is essential for long-term performance. For businesses aiming to optimize or develop custom plugins effectively, choosing to Hire Backend Developer professionals is always a wise decision.
ReplyDelete