WC_REST_Products_Catalog_Controller::get_catalog_file_info
Get catalog file information based on fields.
Метод класса: WC_REST_Products_Catalog_Controller{}
Хуков нет.
Возвращает
Массив|WP_Error. Array with 'filepath', 'url', and 'directory' keys, or WP_Error on failure.
Использование
// private - только в коде основоного (родительского) класса $result = $this->get_catalog_file_info( $fields );
- $fields(массив) (обязательный)
- Product/variation fields to include in the catalog.
Код WC_REST_Products_Catalog_Controller::get_catalog_file_info() WC REST Products Catalog Controller::get catalog file info WC 10.5.2
private function get_catalog_file_info( $fields ) {
$upload_dir = wp_upload_dir();
if ( ! empty( $upload_dir['error'] ) ) {
return new WP_Error( 'upload_dir_error', $upload_dir['error'], array( 'status' => 500 ) );
}
$catalog_dir = trailingslashit( $upload_dir['basedir'] ) . 'wc-catalog/';
$catalog_url = trailingslashit( $upload_dir['baseurl'] ) . 'wc-catalog/';
$today = gmdate( 'Y-m-d' );
$catalog_hash = wp_hash( $today . wp_json_encode( $fields ) );
$filename = "products-{$today}-{$catalog_hash}.json";
return array(
'filepath' => $catalog_dir . $filename,
'url' => $catalog_url . $filename,
'directory' => $catalog_dir,
);
}