Automattic\WooCommerce\Admin
ReportCSVExporter::get_report_columns
Get the report columns from the controller.
Method of the class: ReportCSVExporter{}
No Hooks.
Returns
Array. Array of report column names.
Usage
// protected - for code of main (parent) or child class $result = $this->get_report_columns();
ReportCSVExporter::get_report_columns() ReportCSVExporter::get report columns code WC 10.6.2
protected function get_report_columns() {
// Default to the report's defined export columns.
if ( $this->controller instanceof ExportableInterface ) {
return $this->controller->get_export_columns();
}
// Fallback to generating columns from the report schema.
$report_columns = array();
$report_schema = $this->controller->get_item_schema();
if ( isset( $report_schema['properties'] ) ) {
foreach ( $report_schema['properties'] as $column_name => $column_info ) {
// Expand extended info columns into export.
if ( 'extended_info' === $column_name ) {
// Remove columns with questionable CSV values, like markup.
$extended_info = array_diff( array_keys( $column_info ), array( 'image' ) );
$report_columns = array_merge( $report_columns, $extended_info );
} else {
$report_columns[] = $column_name;
}
}
}
return $report_columns;
}