Create New Item
Item Type
File
Folder
Item Name
Search file in folder and subfolders...
Are you sure want to rename?
optometrists
/
cache
/
cache
/
cache
/
cache
/
cache
/
.wp-cli
/
wp-content
/
plugins
/
mojo-marketplace-wp-plugin
/
vendor
/
bluehost
/
endurance-wp-plugin-updater
:
Plugin.php
Advanced Search
Upload
New Item
Settings
Back
Back Up
Advanced Editor
Save
<?php namespace Endurance_WP_Plugin_Updater; /** * Class Plugin * * Get information about the current plugin context. * * @method author * @method author_uri * @method description * @method domain_path * @method license * @method license_uri * @method name * @method requires_wp_version * @method requires_php_version * @method text_domain * @method uri * @method version */ class Plugin { /** * A collection of valid WordPress plugin file headers. * * @var array */ const HEADERS = [ 'author' => 'Author', 'author_uri' => 'AuthorURI', 'description' => 'Description', 'domain_path' => 'DomainPath', 'license' => 'License', 'license_uri' => 'LicenseURI', 'name' => 'Name', 'requires_wp_version' => 'RequiresAtLeast', 'requires_php_version' => 'RequiresPHP', 'text_domain' => 'TextDomain', 'uri' => 'PluginURI', 'version' => 'Version', ]; protected $file; public function __construct( $file = __FILE__ ) { $this->file = $file; } /** * Get the plugin basename. * * @return string */ public function basename() { return plugin_basename( $this->file ); } /** * Get the plugin slug. * * @return string */ public function slug() { return basename( plugin_dir_path( $this->file ) ); } /** * Get a specific plugin file header. * * @param string $name * * @return string */ protected function get_file_header( $name ) { $file_headers = $this->get_file_headers(); return (string) isset( $file_headers[ $name ] ) ? $file_headers[ $name ] : ''; } /** * Get all plugin file headers. * * @return array */ protected function get_file_headers() { static $file_headers = []; if ( empty( $file_headers ) ) { if ( ! function_exists( 'get_plugin_data' ) ) { require wp_normalize_path( ABSPATH . '/wp-admin/includes/plugin.php' ); } $file_headers = get_plugin_data( $this->file ); } return $file_headers; } /** * Magic method for fetching data from plugin file headers. * * @param string $name * * @return string */ public function __call( $name, $args ) { $value = ''; if ( array_key_exists( $name, $this::HEADERS ) ) { $value = $this->get_file_header( $this::HEADERS[ $name ] ); } return $value; } }