CLI_Alias_Command::get_aliases_data
Get config path and aliases data based on config type.
Method of the class: CLI_Alias_Command{}
No Hooks.
Returns
Array. Config Path and Aliases in it.
Usage
// private - for code of main (parent) class only $result = $this->get_aliases_data( $config, $alias, $create_config_file );
- $config(string) (required)
- Type of config to get data from.
- $alias(string) (required)
- Alias to be used for Add/Update/Delete.
- $create_config_file(true|false)
- If a config file doesn't exist, should it be created? Defaults to false.
Default:false
CLI_Alias_Command::get_aliases_data() CLI Alias Command::get aliases data code WP-CLI 2.13.0-alpha
private function get_aliases_data( $config, $alias, $create_config_file = false ) {
$global_config_path = WP_CLI::get_runner()->get_global_config_path( $create_config_file );
$global_aliases = Spyc::YAMLLoad( $global_config_path );
$project_config_path = WP_CLI::get_runner()->get_project_config_path();
$project_aliases = Spyc::YAMLLoad( $project_config_path );
if ( 'global' === $config ) {
$config_path = $global_config_path;
$aliases = $global_aliases;
} elseif ( 'project' === $config ) {
$config_path = $project_config_path;
$aliases = $project_aliases;
} else {
$is_global_alias = array_key_exists( $alias, $global_aliases );
$is_project_alias = array_key_exists( $alias, $project_aliases );
if ( $is_global_alias && $is_project_alias ) {
WP_CLI::error( "Key '{$alias}' found in more than one path. Please pass --config param." );
} elseif ( $is_global_alias ) {
$config_path = $global_config_path;
$aliases = $global_aliases;
} else {
$config_path = $project_config_path;
$aliases = $project_aliases;
}
}
return [ $config_path, $aliases ];
}