Jump to content

Kategorie pri csv importu produktů (1.6.0.11)


peal

Recommended Posts

Dobrý den,

už několikátým dnem procházím internet a hledám jak vyřešit velmi zvláštní problém, který v různých formách v prestě existuje očividně delší dobu.

 

Import produktů jako takový funguje pěkně a bez errorů. Zařazení do kategorií je ovšem nějaké rozbité a nechámu proč.

V administrační části s přehledem produktů (filtry vypnuty) je u všech produktů kategorie Home. Když produkty rozkliknu, kategorie jsou v záložce Asociace správně. Když dám produkt uložit v tuto chvíli, tak se Home změní na správnou kategorii. Když zapnu filtrování produktů podle kategorií v administraci, tak je to taky správně. Prostě se to jen špatně zobrazí.

 

Daší zvláštní věc je že když produkty přes csv import updatuju (id, sloupce s upravenou hodnotou), tak se kategorie změní na Home, ale tentokrát úplně.

 

Je to bug, dělám něco špatně nebo jsou na to nějaké opravy? Na starší verze psali o AdminImportController.php, ale k je úplně jiný než v této verzi.

 

Díky za jakékoliv nápady na vyřešení 

 

EDIT:

Tak po nekolika dalsich hodinach hledani a zkouseni sice porad nemam reseni, ale aspon uz chapu chovani.

Import produktu s kategoriemi funguje spravne, ale defaultni kategorie je samostatny parametr, ktery nejde primo nastavit.

Takze jakmile uz produkt defaultni kategorii ma, neni problem s updatama, zda se ze jde i menit asociovane kategorie pokud zustane ta hlavni.

 

Jadro pudla bude zrejme v AdminImportController.php, konkretne

$product->id_category_default = isset($product->id_category[0]) ? (int)$product->id_category[0] : (int)Configuration::get('PS_HOME_CATEGORY');

php moc neumim ale na prvni pohled bych rekl, ze pokud neni nastavena defaultni kategorie, pouzije se prvni kategorie z importovanych kategorii, jinak HOME. Jenze z nejakeho duvodu toto nefunguje a nechapu proc.

Edited by peal (see edit history)
Link to comment
Share on other sites

  • 5 months later...

Asi to nebude pro uživatele peal dnešního data při psání tohoto příspěvku aktuální.

Pro ostatní mně pomohlo toto.

Změnil jsem v

 

controllers/admin/AdminImportController.php

 

toto

$product->id_category_default = isset($product->id_category[0]) ? (int)$product->id_category[0] : (int)Configuration::get('PS_HOME_CATEGORY');

na

if (!isset($product->id_category_default) || !$product->id_category_default)
  $product->id_category_default = isset($product->id_category[0]) ? (int)$product->id_category[0] : (int)Configuration::get('PS_HOME_CATEGORY');
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...