pepocero Posted April 19, 2012 Share Posted April 19, 2012 Bueno, basicamente es eso. Cuando en el BO, al editar un producto, voy a la pestaña caracteristicas y modifico alguna de dichas caracteristicas (como el alto o el ancho -una medida en centimetros por ejemplo -) cuando voy al producto en el front, en la pestaña ficha tecnica aparecen asi: Alto 12 Ancho 12 Peto 12 Profundo 12 Alto 12 Ancho 12 Peto 12 Profundo 12 Alto 12 Ancho 12 Peto 12 Profundo 12 Pareciera que en vez de borrar el valor anterior, lo agregara al que ya tiene, y lo duplica... si lo vuelvo a hacer, borrando lo que ya tenia y modificandolo por otros valores, me apareceria otras filas mas duplicadas.... Si alguien sabe como solucionarlo se lo agradeceria... Mi version de prestashop es 1.4.7.0 Link to comment Share on other sites More sharing options...
mindus6600 Posted December 12, 2012 Share Posted December 12, 2012 A mi me pasa exactamente lo mismo con la versión 1.5.2 ¿Alguna solución? Link to comment Share on other sites More sharing options...
Federman Posted February 26, 2013 Share Posted February 26, 2013 Tengo el mismo error. Tambien en la version 1.5.2 Alguien??? Algun Moderador??? Link to comment Share on other sites More sharing options...
mindus6600 Posted February 28, 2013 Share Posted February 28, 2013 Todavia sigo sin encontrar una solución Link to comment Share on other sites More sharing options...
Federman Posted March 1, 2013 Share Posted March 1, 2013 Hola . Encontre que el error me los esta produciendo el modulo de productos nuevos (blocknewproducts). Por lo menos en mi caso. Cuando el producto esta nuevo repite la informacion de la ficha tecnica, una vez que el producto deja de ser nuevo, se desaparece el duplicado. Puedes intentar desactivar el modulo de productos nuevos a ver si se soluciona el problema. Link to comment Share on other sites More sharing options...
Federman Posted March 1, 2013 Share Posted March 1, 2013 Logre solucionar el problema. Hay que cambiar el codigo de la funcion (cacheFrontFeatures) en el archivo /classes/Product.php linea 3162 o 3169. Y sustituirla por este cogido: public static function cacheFrontFeatures($product_ids, $id_lang) { if (!Feature::isFeatureActive()) return; $product_implode = array(); foreach ($product_ids as $id_product) if ((int)$id_product && !array_key_exists($id_product.'-'.$id_lang, self::$_cacheFeatures)) $product_implode[] = (int)$id_product; if (!count($product_implode)) return; $result = Db::getInstance(_PS_USE_SQL_SLAVE_)->executeS(' SELECT id_product, name, value, pf.id_feature FROM '._DB_PREFIX_.'feature_product pf LEFT JOIN '._DB_PREFIX_.'feature_lang fl ON (fl.id_feature = pf.id_feature AND fl.id_lang = '.(int)$id_lang.') LEFT JOIN '._DB_PREFIX_.'feature_value_lang fvl ON (fvl.id_feature_value = pf.id_feature_value AND fvl.id_lang = '.(int)$id_lang.') LEFT JOIN '._DB_PREFIX_.'feature f ON (f.id_feature = pf.id_feature) WHERE `id_product` IN ('.implode($product_implode, ',').') ORDER BY f.position ASC'); foreach ($result as $row) { if (!array_key_exists($row['id_product'].'-'.$id_lang, self::$_frontFeaturesCache)) self::$_frontFeaturesCache[$row['id_product'].'-'.$id_lang] = array(); if (!isset(self::$_frontFeaturesCache[$row['id_product'].'-'.$id_lang][$row['id_feature']])) self::$_frontFeaturesCache[$row['id_product'].'-'.$id_lang][$row['id_feature']] = $row; } } Este codigo es la misma funcion pero tomada de la version 1.5.3 del prestashop cualquier duda estamos a la orden. Link to comment Share on other sites More sharing options...
mindus6600 Posted March 2, 2013 Share Posted March 2, 2013 ¡¡¡Solucionado!!!!! Muchas gracias me has sido de gran ayuda. Link to comment Share on other sites More sharing options...
Recommended Posts