Changeset 1942766
- Timestamp:
- 09/17/2018 05:56:31 PM (8 years ago)
- Location:
- kips-sync/trunk
- Files:
-
- 2 edited
-
includes/api/class.kips-rest-products-controller.php (modified) (2 diffs)
-
kips_sync.php (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
kips-sync/trunk/includes/api/class.kips-rest-products-controller.php
r1936400 r1942766 190 190 191 191 return array( 'product' => apply_filters( 'woocommerce_api_product_response', $product_data, $product, $fields, $this->server ) ); 192 } 192 } 193 194 /** 195 * Get an individual variation's data 196 * 197 * @since 2.1 198 * @param WC_Product $product 199 * @return array 200 */ 201 private function get_variation_data( $product ) { 202 $variations = array(); 203 204 foreach ( $product->get_children() as $child_id ) { 205 $variation = wc_get_product( $child_id ); 206 207 if ( ! $variation || ! $variation->exists() ) { 208 continue; 209 } 210 211 $variations[] = array( 212 'id' => $variation->get_id(), 213 'created_at' => $variation->get_date_created(), 214 'updated_at' => $variation->get_date_modified(), 215 'downloadable' => $variation->is_downloadable(), 216 'virtual' => $variation->is_virtual(), 217 'permalink' => $variation->get_permalink(), 218 'sku' => $variation->get_sku(), 219 'price' => wc_format_decimal( $variation->get_price(), 2 ), 220 'regular_price' => wc_format_decimal( $variation->get_regular_price(), 2 ), 221 'sale_price' => $variation->get_sale_price() ? wc_format_decimal( $variation->get_sale_price(), 2 ) : null, 222 'taxable' => $variation->is_taxable(), 223 'tax_status' => $variation->get_tax_status(), 224 'tax_class' => $variation->get_tax_class(), 225 'stock_quantity' => (int) $variation->get_stock_quantity(), 226 'in_stock' => $variation->is_in_stock(), 227 'backordered' => $variation->is_on_backorder(), 228 'purchaseable' => $variation->is_purchasable(), 229 'visible' => $variation->variation_is_visible(), 230 'on_sale' => $variation->is_on_sale(), 231 'weight' => $variation->get_weight() ? wc_format_decimal( $variation->get_weight(), 2 ) : null, 232 'dimensions' => array( 233 'length' => $variation->get_length(), 234 'width' => $variation->get_width(), 235 'height' => $variation->get_height(), 236 'unit' => get_option( 'woocommerce_dimension_unit' ), 237 ), 238 'shipping_class' => $variation->get_shipping_class(), 239 'shipping_class_id' => ( 0 !== $variation->get_shipping_class_id() ) ? $variation->get_shipping_class_id() : null, 240 'image' => $this->get_images( $variation ), 241 'attributes' => $this->get_attributes( $variation ), 242 'downloads' => $this->get_downloads( $variation ), 243 'download_limit' => (int) $product->get_download_limit(), 244 'download_expiry' => (int) $product->get_download_expiry(), 245 ); 246 } 247 248 return $variations; 249 } 193 250 194 251 /** … … 378 435 379 436 return $attributes; 380 } 437 } 438 439 /** 440 * Get attribute options. 441 * 442 * @param int $product_id Product ID. 443 * @param array $attribute Attribute data. 444 * @return array 445 */ 446 protected function get_attribute_options( $product_id, $attribute ) { 447 if ( isset( $attribute['is_taxonomy'] ) && $attribute['is_taxonomy'] ) { 448 return wc_get_product_terms( 449 $product_id, $attribute['name'], array( 450 'fields' => 'names', 451 ) 452 ); 453 } elseif ( isset( $attribute['value'] ) ) { 454 return array_map( 'trim', explode( '|', $attribute['value'] ) ); 455 } 456 457 return array(); 458 } 381 459 382 460 /** -
kips-sync/trunk/kips_sync.php
r1940942 r1942766 4 4 Plugin URI: https://kips.io 5 5 Description: Synchronisation des flux produits / commandes avec Kips. 6 Version: 1.0. 46 Version: 1.0.3 7 7 Author: Kips 8 8 License: GPL2
Note: See TracChangeset
for help on using the changeset viewer.