PATH:
home
/
letacommog
/
laindinois
/
wp-content
/
plugins
/
wp-all-export-pro
/
src
/
App
/
Field
<?php namespace Wpae\App\Field; class AgeGroup extends Field { const SECTION = 'detailedInformation'; public function getValue($snippetData) { $detailedInformationData = $this->feed->getSectionFeedData(self::SECTION); if($detailedInformationData['ageGroup'] == self::SELECT_FROM_WOOCOMMERCE_PRODUCT_ATTRIBUTES) { if(isset($detailedInformationData['ageGroupAttribute'])) { $ageGroupAttribute = $detailedInformationData['ageGroupAttribute']; return $this->replaceSnippetsInValue($ageGroupAttribute, $snippetData); } else { return ''; } } else if ($detailedInformationData['ageGroup'] == 'selectFromProductTaxonomies') { $categoryData = $this->feed->getSectionFeedData(self::SECTION); $categoryId = $this->getProductCategoryId($this->getProduct()); if(isset($categoryData['ageGroupCats'][$categoryId])) { return $categoryData['ageGroupCats'][$categoryId]; } else { return ''; } } else if($detailedInformationData['ageGroup'] == self::CUSTOM_VALUE_TEXT) { return $this->replaceSnippetsInValue($detailedInformationData['ageGroupCV'], $snippetData); } else { throw new \Exception('Unknown vale '.$detailedInformationData['ageGroup'].' for field ageGroup'); } } public function getFieldName() { return 'age_group'; } private function getProductCategoryId($product) { $category = $this->getProductCategory($product); return $category->term_id; } private function getProductCategory($product) { $productCategories = get_the_terms($product->ID, 'product_cat'); if (!is_array($productCategories) || !count($productCategories)) { return ''; } // loop through each cat foreach ($productCategories as $category) { // get the children (if any) of the current cat $children = get_categories(array('taxonomy' => 'product_cat', 'parent' => $category->term_id)); if (count($children) == 0) { // if no children, then echo the category name. return $category; } } $lastCategory = $productCategories[0]; return $lastCategory; } /** * @return string * @throws \Exception */ private function getProduct() { if ($this->entry->post_type == 'product') { return $this->entry; } else if ($this->entry->post_type == 'product_variation') { return get_post($this->entry->post_parent); } throw new \Exception('Unknown product type'); } }
[+]
..
[-] Gender.php
[edit]
[-] Material.php
[edit]
[-] CustomLabel4.php
[edit]
[-] Price.php
[edit]
[-] CustomLabel3.php
[edit]
[-] Color.php
[edit]
[-] ExcludedDestination.php
[edit]
[-] Shipping.php
[edit]
[-] CustomLabel2.php
[edit]
[-] Multipack.php
[edit]
[-] AgeGroup.php
[edit]
[-] UnitPricingBaseMeasure.php
[edit]
[-] Adult.php
[edit]
[-] AdditionalImageLink.php
[edit]
[-] Link.php
[edit]
[-] Brand.php
[edit]
[-] ExpirationDate.php
[edit]
[-] Tax.php
[edit]
[-] AvailabilityDate.php
[edit]
[-] Condition.php
[edit]
[-] Mpn.php
[edit]
[-] Gtin.php
[edit]
[-] IsBundle.php
[edit]
[-] SizeType.php
[edit]
[-] Size.php
[edit]
[-] ShippingWeight.php
[edit]
[-] SalePriceEffectiveDate.php
[edit]
[-] ShippingWidth.php
[edit]
[-] CustomLabel1.php
[edit]
[-] Availability.php
[edit]
[-] AdwordsRedirect.php
[edit]
[-] SizeSystem.php
[edit]
[-] ShippingLabel.php
[edit]
[-] FieldFactory.php
[edit]
[-] MobileLink.php
[edit]
[-] GoogleProductCategory.php
[edit]
[-] Id.php
[edit]
[-] ShippingHeight.php
[edit]
[-] EnergyEfficiencyClass.php
[edit]
[-] Pattern.php
[edit]
[-] Description.php
[edit]
[-] UnitPricingMeasure.php
[edit]
[-] ItemGroupId.php
[edit]
[-] ShippingLength.php
[edit]
[-] Field.php
[edit]
[-] ImageLink.php
[edit]
[-] ProductType.php
[edit]
[-] ShippingDimensions.php
[edit]
[-] IdentifierExists.php
[edit]
[-] SalePrice.php
[edit]
[-] PromotionId.php
[edit]
[-] CustomLabel0.php
[edit]
[-] Title.php
[edit]