The get_file_data() WordPress PHP function retrieves metadata from a file, such as a plugin or theme.
Usage
get_file_data( $file, $default_headers, $context = '' )
Example:
$file_path = plugin_dir_path( __DIR__ ) . 'example-plugin-file.php'; $metadata = get_file_data( $file_path, array( 'Version' => 'Version' ) );
Parameters
$file (string): Absolute path to the file.$default_headers (array): List of headers, in the formatarray( 'HeaderKey' => 'Header Name' ).$context (string): Optional. If specified, adds filter hook ‘extra_$context_headers’. Default: ”.
More information
See WordPress Developer Resources: get_file_data
Examples
Registering stylesheet and scripts with plugin version
This example shows how to use the get_file_data() function to read the version number from the main plugin file and use it for enqueuing stylesheets and scripts.
function register_plugin_styles_scripts() {
$file_path = plugin_dir_path( __DIR__ ) . 'example-plugin-file.php';
$plugin_data = get_file_data( $file_path, array( 'Version' => 'Version' ) );
if ( ! empty( $plugin_data['Version'] ) ) {
$ver = $plugin_data['Version'];
wp_enqueue_style( 'public-style', plugins_url( 'path/to/stylesheet.css' ), array(), $ver );
wp_enqueue_script( 'public-script', plugins_url( 'path/to/script.js' ), array(), $ver , true );
}
}
Reading multiple header keys
This example demonstrates how to read multiple header keys using get_file_data().
$filedata = get_file_data( plugin_dir_path(__FILE__) . '/dirName/index.php', array(
'Page Name' => 'Page Name',
'Preview Image' => 'Preview Image',
'Template File' => 'Template File',
));
print_r($filedata);