WordPress插件的目录结构包括以下文件和文件夹:
插件主文件:通常以插件名加上.php作为文件名,例如sample-plugin.php。
readme.txt文件:提供插件的详细信息,如插件的名称、描述、作者信息、安装说明、常见问题解答等等。
/assets目录:包含插件的图标、样式表和Javascript文件。
/includes目录:包含插件的PHP文件,用于定义插件的功能和逻辑。
/languages目录:包含用于翻译插件的.po和.mo语言文件。
示例代码:
以下是一个简单的WordPress插件的代码示例:
/*
Plugin Name: Sample Plugin
Plugin URI: http://www.example.com/sample-plugin/
Description: This is a sample plugin for WordPress.
Version: 1.0
Author: John Doe
Author URI: http://www.example.com/
*/
/* Define plugin constants */
define( 'SAMPLE_PLUGIN_PATH', plugin_dir_path( __FILE__ ) );
define( 'SAMPLE_PLUGIN_URL', plugin_dir_url( __FILE__ ) );
/* Load plugin assets */
function sample_plugin_assets() {
wp_enqueue_style( 'sample-plugin-style', SAMPLE_PLUGIN_URL . 'assets/css/style.css' );
wp_enqueue_script( 'sample-plugin-script', SAMPLE_PLUGIN_URL . 'assets/js/script.js', array(), '1.0', true );
}
add_action( 'wp_enqueue_scripts', 'sample_plugin_assets' );
/* Register plugin widgets */
function sample_plugin_widgets_init() {
register_widget( 'Sample_Plugin_Widget' );
}
add_action( 'widgets_init', 'sample_plugin_widgets_init' );
/* Define plugin widget class */
class Sample_Plugin_Widget extends WP_Widget {
function __construct() {
parent::__construct(
'sample_plugin_widget',
__( 'Sample Plugin Widget', 'sample-plugin' ),
array(
'description' => __( 'A sample widget for the Sample Plugin.', 'sample-plugin' ),
)
);
}
public function widget( $args, $instance ) {
// Display widget output
}
public function form( $instance ) {
// Create widget form
}
public function update( $new_instance, $old_instance ) {
// Save widget settings
}
}