Advertisement
Guest User

Untitled

a guest
Apr 23rd, 2019
94
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 2.80 KB | None | 0 0
  1. /**
  2.      *
  3.      * Update Metas products
  4.      *
  5.      */
  6.     private function addMetaProducts()
  7.     {
  8.         $product_list = Product::getProducts($this->context->language->id, 1, 5000, 'name', 'ASC');
  9.         $langs = Language::getLanguages();
  10.  
  11.         foreach ($product_list as $product) {
  12.             $product = new Product((int)$product['id_product']);
  13.  
  14.             // dump($product); die;
  15.            
  16.             $meta_title = $meta_desc = $meta_desc_short = $meta_keyword = array();
  17.  
  18.             foreach ($langs as $lang) {
  19.                 $meta_title_value = Tools::getValue('meta_product_title_'.$lang['id_lang']);
  20.                 $meta_desc_value = Tools::getValue('meta_product_desc_'.$lang['id_lang']);
  21.                 $meta_keyword_value = Tools::getValue('meta_product_keywords_'.$lang['id_lang']);
  22.                
  23.                 $category = new Category((int)$product->id_category_default);
  24.  
  25.                 $meta_title[$lang['id_lang']] = str_replace('{category_name}', $category->name[$lang['id_lang']], $meta_title_value);
  26.                 $meta_keyword[$lang['id_lang']] = str_replace('{category_name}', $category->name[$lang['id_lang']], $meta_keyword_value);
  27.  
  28.                 $meta_title[$lang['id_lang']] = str_replace('{product_price}', $product->price, $meta_title[$lang['id_lang']]);
  29.  
  30.                 $meta_title[$lang['id_lang']] = str_replace('{product_name}', $product->name[$lang['id_lang']], $meta_title[$lang['id_lang']]);
  31.                 $meta_keyword[$lang['id_lang']] = str_replace('{product_name}', $product->name[$lang['id_lang']], $meta_keyword[$lang['id_lang']]);
  32.  
  33.                 // Partie meta_description du produit
  34.                 $meta_desc[$lang['id_lang']] = str_replace('{product_desc}', $product->description[$lang['id_lang']], $meta_desc_value);
  35.                 $meta_desc_short[$lang['id_lang']] = str_replace('{product_desc_short}', $product->description_short[$lang['id_lang']], $meta_desc_value);
  36.  
  37.                 // On assigne soit la description, soit la description courte
  38.                 if ($meta_desc_value == '{product_desc_short}') {
  39.                     $product->meta_description[$lang['id_lang']] = strip_tags($meta_desc_short[$lang['id_lang']]);
  40.                 } elseif ($meta_desc_value == '{product_desc}') {
  41.                     $product->meta_description[$lang['id_lang']] = strip_tags($meta_desc[$lang['id_lang']]);
  42.                 }
  43.  
  44.                 $meta_keyword[$lang['id_lang']] = str_replace('{product_manufacturer}', $product->manufacturer_name[$lang['id_lang']], $meta_keyword[$lang['id_lang']]);
  45.  
  46.                 $product->meta_title[$lang['id_lang']] = $meta_title[$lang['id_lang']] ;
  47.                 $product->meta_keywords[$lang['id_lang']]  = $meta_keyword[$lang['id_lang']];
  48.             }
  49.             $product->save();
  50.         }
  51.     }
  52. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement