<td>
								<?php 
    if ($field_data) {
        ?>
									<input 
										data-manage-stock="<?php 
        echo $managing_stock;
        ?>
"
										data-purchasable="<?php 
        echo $variation->is_purchasable() ? '1' : '0';
        ?>
"
										data-instock="<?php 
        echo $variation->is_in_stock() ? '1' : '0';
        ?>
"
										data-backorders="<?php 
        echo $variation->backorders_allowed() ? '1' : '0';
        ?>
"
										data-max="<?php 
        echo $variation->get_stock_quantity();
        ?>
"
										data-price="<?php 
        echo $variation->get_price();
        ?>
"
										data-vmsg="<?php 
 /**
  * Generate YML body with offers.
  *
  * @since     0.3.0
  * @param     $currency
  * @param     $query
  *
  * @return    string
  */
 private function yml_offers($currency, $query)
 {
     $yml = '';
     while ($query->have_posts()) {
         $query->the_post();
         $product = wc_get_product($query->post->ID);
         // We use a seperate variable for offer because we will be rewriting it for variable products.
         $offer = $product;
         /*
          * By default we set $variation_count to 1.
          * That means that there is at least one product available.
          * Variation products will have more than 1 count.
          */
         $variation_count = 1;
         if ($product->is_type('variable')) {
             $variation_count = count($offer->get_children());
             $variations = $product->get_available_variations();
         }
         while ($variation_count > 0) {
             $variation_count--;
             // If variable product, get product id from $variations array.
             $offerID = $product->is_type('variable') ? $variations[$variation_count]['variation_id'] : $product->id;
             // Prepare variation link.
             $var_link = '';
             if ($product->is_type('variable')) {
                 $variable_attribute = wc_get_product_variation_attributes($offerID);
                 $var_link = '?' . key($variable_attribute) . '=' . current($variable_attribute);
                 // This has to work but we need to think of a way to save the initial offer variable.
                 $offer = new WC_Product_Variation($offerID);
             }
             // NOTE: Below this point we start using $offer instead of $product.
             $yml .= '      <offer id="' . $offerID . '" available="' . ($offer->is_in_stock() ? "true" : "false") . '">' . PHP_EOL;
             $yml .= '        <url>' . get_permalink($offer->id) . $var_link . '</url>' . PHP_EOL;
             // Price.
             if ($offer->sale_price && $offer->sale_price < $offer->regular_price) {
                 $yml .= '        <price>' . $offer->sale_price . '</price>' . PHP_EOL;
                 $yml .= '        <oldprice>' . $offer->regular_price . '</oldprice>' . PHP_EOL;
             } else {
                 $yml .= '        <price>' . $offer->regular_price . '</price>' . PHP_EOL;
             }
             $yml .= '        <currencyId>' . $currency . '</currencyId>' . PHP_EOL;
             // Category.
             // Not using $offerID, because variable products inherit category from parent.
             $categories = get_the_terms($product->id, 'product_cat');
             $category = array_shift($categories);
             $yml .= '        <categoryId>' . $category->term_id . '</categoryId>' . PHP_EOL;
             // Market category.
             if (isset($this->settings['market_category']) && $this->settings['market_category'] != 'not_set') {
                 $market_category = wc_get_product_terms($offerID, 'pa_' . $this->settings['market_category'], array('fields' => 'names'));
                 if ($market_category) {
                     $yml .= '        <market_category>' . wp_strip_all_tags(array_shift($market_category)) . '</market_category>' . PHP_EOL;
                 }
             }
             // TODO: get all the images
             $image = get_the_post_thumbnail_url(null, 'full');
             //foreach ( $images as $image ):
             if (strlen(utf8_decode($image)) <= 512) {
                 $yml .= '        <picture>' . esc_url($image) . '</picture>' . PHP_EOL;
             }
             //endforeach;
             $yml .= '        <delivery>true</delivery>' . PHP_EOL;
             $yml .= '        <name>' . $offer->get_title() . '</name>' . PHP_EOL;
             // Vendor.
             if (isset($this->settings['vendor']) && $this->settings['vendor'] != 'not_set') {
                 $vendor = wc_get_product_terms($offer->ID, 'pa_' . $this->settings['vendor'], array('fields' => 'names'));
                 if ($vendor) {
                     $yml .= '        <vendor>' . wp_strip_all_tags(array_shift($vendor)) . '</vendor>' . PHP_EOL;
                 }
             }
             // Vendor code.
             if ($offer->sku) {
                 $yml .= '        <vendorCode>' . $offer->sku . '</vendorCode>' . PHP_EOL;
             }
             // Description.
             if ($offer->post->post_content) {
                 $yml .= '        <description><![CDATA[' . html_entity_decode($offer->post->post_content, ENT_COMPAT, "UTF-8") . ']]></description>' . PHP_EOL;
             }
             // Sales notes.
             if ($this->settings['sales_notes'] == 'yes' && $offer->post->post_excerpt) {
                 $yml .= '        <sales_notes>' . wp_strip_all_tags($offer->post->post_excerpt) . '</sales_notes>' . PHP_EOL;
             }
             $yml .= '      </offer>' . PHP_EOL;
         }
     }
     return $yml;
 }