Automattic\WooCommerce\Internal\CLI\Migrator\Platforms\Shopify
ShopifyMapper::map_metafields
Maps metafields and SEO data from Shopify product.
Method of the class: ShopifyMapper{}
No Hooks.
Returns
Array. Metafields data.
Usage
// private - for code of main (parent) class only $result = $this->map_metafields( $shopify_product ): array;
- $shopify_product(object) (required)
- The Shopify product data.
ShopifyMapper::map_metafields() ShopifyMapper::map metafields code WC 10.8.1
private function map_metafields( object $shopify_product ): array {
$metafields_data = array();
if ( property_exists( $shopify_product, 'metafields' ) && ! empty( $shopify_product->metafields->edges ) ) {
foreach ( $shopify_product->metafields->edges as $edge ) {
$field_node = $edge->node;
$key = sprintf( '%s_%s', $field_node->namespace, $field_node->key );
$metafields_data[ $key ] = $field_node->value;
}
}
// Enhanced SEO mapping.
$seo_data = $this->map_seo_fields( $shopify_product );
$metafields_data = array_merge( $metafields_data, $seo_data );
return $metafields_data;
}