plugin_basename( string $file )
Gets the basename of a plugin.
Description Description
This method extracts the name of a plugin from its filename.
Parameters Parameters
- $file
-
(string) (Required) The filename of plugin.
Return Return
(string) The name of a plugin.
Source Source
File: wp-includes/plugin.php
function plugin_basename( $file ) {
global $wp_plugin_paths;
// $wp_plugin_paths contains normalized paths.
$file = wp_normalize_path( $file );
arsort( $wp_plugin_paths );
foreach ( $wp_plugin_paths as $dir => $realdir ) {
if ( strpos( $file, $realdir ) === 0 ) {
$file = $dir . substr( $file, strlen( $realdir ) );
}
}
$plugin_dir = wp_normalize_path( WP_PLUGIN_DIR );
$mu_plugin_dir = wp_normalize_path( WPMU_PLUGIN_DIR );
$file = preg_replace( '#^' . preg_quote( $plugin_dir, '#' ) . '/|^' . preg_quote( $mu_plugin_dir, '#' ) . '/#', '', $file ); // get relative path from plugins dir
$file = trim( $file, '/' );
return $file;
}
Expand full source code Collapse full source code View on Trac
Changelog Changelog
| Version | Description |
|---|---|
| 1.5.0 | Introduced. |
User Contributed Notes User Contributed Notes
You must log in before being able to contribute a note or feedback.
If your plugin file is located at /home/www/wp-content/plugins/wpdocs-plugin/wpdocs-plugin.php, and you call:
The
$xvariable will equal to “wpdocs-plugin/wpdocs-plugin.php”.If you need to access a directory within your awesome plugin, eg, a class directory, you can access it by:
$lang_dir variable will now be “your-awesome-plugin/class”, you can now use this to reference files within the class directory.