2010-08-23 10 views
6

Después de importar los productos en magento, que parece no tener errores; los productos no son visibles en la tienda. Sin embargo, si voy a cualquier producto y lo guardo (incluso sin cambiar nada), estará disponible al instante. ¿Por qué estos productos no son visibles de inmediato?después de importar productos en magento no aparecen en el catálogo

Ejecución de la última compilación estable.

Gracias

+0

¿Estás seguro de que esta es una pregunta de programación? Porque parece que sería mejor que lo preguntaras en http://superuser.com/ – Iznogood

+0

, sí, esto definitivamente está relacionado con la programación ... desafortunadamente :( –

+0

estoy generando mi propio archivo csv desde un scraper que escribí ... parece para importar bien, simplemente no estoy seguro de por qué no están activos inmediatamente? – user398314

Respuesta

4

La mejor manera de resolver este problema mediante programación es

  1. importar el producto

  2. Examinar todos los atributos del producto a través de algún código personalizado

  3. Guardar la producto

  4. examinar todos los atributos del producto a través de algún código personalizado

  5. comparar los resultados de # 2 y # 4

  6. asegurar que su proceso de importación establece explícitamente lo atributos que faltaban en el # 2, pero presente en # 4

Aquí está el recorte que usaría para examinar los atributos del producto. Ejecutar este o algo parecido en una plantilla phtml, controlador personalizado, etc.

var_dump( 
Mage::getModel('catalog/product') 
->getCollection() 
->addAttributeToSelect('*') 
->addAttributeToFilter('sku','SKUGOESHERE') 
    ->getFirstItem() 
->getData() 
); 
+0

http://pastebin.com/fMgjDQRU esa es la salida de lo que mencionaste antes de que la parte superior sea un producto visible en la parte inferior que no se muestra en la interfaz. . Todavía no puedo encontrar una razón – user398314

+0

Olvidé una llamada al método allí (-> getFirstItem()). Pruebe el código editado, eso debería darle todos los atributos. –

0

Asegúrese de que ha entrado en la interfaz de administración y en Sistema> Administración Índice de seleccionar todos y elegir la opción "indexar" del desplegable abajo arriba a la derecha. Ejecutar.

Además, actualice el almacenamiento en caché en Sistema> Administración de caché y, por si fuera poco, elimine todos los archivos en var/caché.

Si eso no lo soluciona, repórtelo para obtener más sugerencias.

+0

Ya reindexé y borré todo el caché ... aún no hay suerte. – user398314

+0

Esta es una muestra de cómo se ve mi importación tienda \t sitio web \t attribute_set \t tipo \t category_ids \t SKU \t has_options \t nombre \t imagen \t small_image \t miniatura \t precio \t cuestan \t estado \t tax_class_id \t is_recurring \t visibilidad \t Descripción \t short_description \t product_type_id \t product_name \t Cant \t min_qty \t is_in_stock \t manage_stock \t peso – user398314

+0

heres un enlace que hace que sea un poco más fácil de leer, no sabía que se vería tan atascado http://pastebin.com/VUkeihNG – user398314

1

Inspirado en la respuesta de Alan Storm, pero de nivel inferior.

  1. Comience desde una base de datos vacía. Vuelque en un archivo SQL con la etiqueta original.sql
  2. Cree manualmente uno de sus productos.
  3. Comprobar que esté visible.
  4. un volcado de la base de datos a un archivo llamado manual.sql
  5. sobrescribir la base de datos mediante la importación de original.sql
  6. crear un archivo CSV para importar el producto que ha elegido e importar ella.
  7. un volcado de la base de datos a un archivo llamado automatic.sql
  8. Compare manual.sql y automatic.sql entre sí. Debería ver donde se basa el problema.
1

Para cualquier otra persona que tenga este problema: Lo solucioné al asegurarme de configurar el websiteid para el producto. Si está utilizando un script personalizado, no olvide agregar lo siguiente:

$product->setWebsiteIds(array(Mage::app()->getStore(true)->getWebsite()->getId())); 
0

fijo con la solución de dtcuk. Tenga en cuenta:

setWebsiteIds(array(

Básicamente, incluso si sólo hay 1 Identificación del sitio web que desea establecer, todavía tendría que pasar una matriz con 1 web ID.

0

Tuve el mismo problema. Aquí falta el ID del sitio web. Entonces debería funcionar.

$newProduct = Mage::getModel('catalog/product') 
     ->setAttributeSetId('9') 
     ->setTypeId('simple') 
     ->setStatus(1) 
     ->setTaxClassId(2) 
     ->setWebsiteIds(array(1)) 
     ->setVisibility(4) 
     ->setSku($sku) 
     ->setName($name) 
     ->setDescription($description) 
     ->setShortDescription($shortDescription) 
     ->setPrice($price) 
     ->save(); 
0

que he tenido la misma cosa y después de un largo solución de problemas que he encontrado, que mi CSV faltaba un campo: "_product_websites" con un valor de "base" (la misma en todos los artículos).

Cuestiones relacionadas