-
Notifications
You must be signed in to change notification settings - Fork 25
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
XML feedy - podpora variant #19
Comments
Ano, varianty jsou určitě důležité. |
Kód přesunut: #22 |
Zdrojový kód jsem přesunul do nového požadavku (nesouvisí s podporou variant). |
Prosím, co můžu udělat pro urychlení variant do feedu. |
@novetrendy: Získat mi nějaký čas :-) Nebo se do toho pustit sám a pak to mohu jen integrovat... Nemělo by to být ale nic složitého, zkusím připravit základní verzi na otestování. U každého produktu v hlavním cyklu by se muselo ověřit, zda má nějaké variace a potom by se ve feedu nezobrazoval konkrétní produkt, ale pouze variace. Nebo by se měl zobrazit produkt i variace? To asi spíše logicky ne? |
Ve feedu heureka jsou varinaty následovně:
Kde jsou jednotlivé vlastnosti produktu (použité pro variace) a <ITEMGROUP_ID> chápu jako SKU rodičovského produktu, ze kterého jsou variace vytvořeny. |
Dobrý den, chci se zeptat, jak to vypadá s variantami. Bohužel jsem loop s variantami ještě neřešil, takže nevím kudy kam, abych si to sám doprogramoval. |
Taky bych rád viděl variace. Složité to nebude. Zde jsou snippety kódu, který lze použít. if ($produkt->is_type("variable")){
foreach($produkt->get_available_variations() as $variation){
$variation = new WC_Product_Variation($variation['variation_id']);
/* Zde již lze získat atributy variace */
$in_stock = $variation->is_in_stock();
$price_vat = $variation->get_regular_price();
$url = get_permalink($produkt->id); // tady by se hodilo jako parametr ty varianty (např. **?attribute_pa_barva=červená&attribute_pa_delka=5m**
}
} Získání kategorií, separátor by mohl být třeba volitelný z administrace: $separator = " | ";
$categories = implode(
$separator,
wp_get_object_terms($produkt->id,
'product_cat',
array('orderby' => 'term_group',
'order' => 'ASC',
'fields' => 'names'
)
)
); Výrobci: $separator = ", ";
$manufacturers = implode(
$separator,
wp_get_object_terms($produkt->id, 'brand', array("fields" => "names"))
); Potom mám metodu na zapsání jednoho produktu: function writeXML($xmlWriter,
$name,
$product_no,
$id,
$description,
$category,
$manufacturers,
$url,
$img_url,
$delivery_date,
$price_vat,
$ean,
$item_group_id){
$xmlWriter->startElement('SHOPITEM' );
$xmlWriter->writeElement('ITEM_ID', $id);
$xmlWriter->writeElement('PRODUCTNAME', $name);
$xmlWriter->startElement('DESCRIPTION');
$xmlWriter->writeCData($description);
$xmlWriter->endElement();
$xmlWriter->writeElement('PRICE_VAT', $price_vat);
$xmlWriter->writeElement('URL', $url);
$xmlWriter->writeElement('IMGURL', $img_url);
$xmlWriter->writeElement('CATEGORYTEXT', $category);
$xmlWriter->writeElement('MANUFACTURER', $manufacturers);
$xmlWriter->writeElement('DELIVERY_DATE', $delivery_date);
if (!empty($ean)) {
$xmlWriter->writeElement('EAN', $ean );
}
if ($item_group_id !== NULL) {
$xmlWriter->writeElement('ITEMGROUP_ID', $item_group_id);
}
$xmlWriter->endElement();
} |
Tak jsem to na základě uvedených kódů začal konečně implementovat a každá variace bude vlastně speciální položka feedu. A jak to bude třeba s názvem ( |
PRODUCTNAME bych vzal title z nadřazeného produktu + vlastnosti varianty. |
Je to složitější než jsem si myslel :-(
Zítra zkusím doplnit první verzi na otestování... |
První pokus: 4851661 Zatím moc netestováno na reálném webu, možná se tam objeví nějaké problémy. Podporovány by měly být vlastnosti (attributes) u jednoduchých produktů, klasické varianty i jejich kombinace. Původně navržené funkce moc nepočítaly s podobně složitým molochem, takže se to bude muset celé přepsat a rozsekat do jednotlivých metod, jinak to nebude dlouhodobě udržitelné :-) |
Dobrý den, |
@novetrendy: Ano, zatím to má na zkoušku pouze Heureka. Objevuje se nějaká chyba? Pošlete prosím přístupy... |
CHYBA: Neplatná šablona pro RSS zdroj. |
@novetrendy: Mělo by to být opraveno, způsobovalo to velké množství variant. Pokud je na webu mnoho položek (produktů + variant dohromady), tak je třeba používat průběžně generovaný |
Zítra hned vyzkouším a dám vědět! |
Omlouvám se za zdržení, novou verzi jsem nainstaloval, ještě se soubor generuje, ale podle první části to vypadá SUPER! |
@novetrendy: Díky, jak to nakonec dopadlo s vygenerovaným souborem? A co na to Heureka? |
To bohužel nevím, protože všichni klienti používají jen zbozi.cz |
Tak bohužel soubor heureka.xml se nevytvoří, pouze heureka-tmp.xml |
@novetrendy: Tak to je podivné, už jsem to na jednom webu zkoušel a prošlo to vcelku bez problémů. Mohu poprosit o přístupy? Doplním to po opravě zrovna pro Zbozi.cz. |
Přístupy jsem Vám již zasílal na email. (10.12. 12:08) |
@novetrendy: Soubor se nestihl vygenerovat, je tam více než 8000 produktů + variant, takže se musel cron spustit 8-krát (po 3 minutách). A ten web je patrně testovací a nemá žádnou návštěvnost, takže se asi tolikrát nespustil. Jakmile jsem ho navštívil, tak se to automaticky dokončilo. |
@pavelevap: Ano web je před spuštěním, takže nemá žádnou návštěvnost. Díky za info! |
Stává se to pouze při prvním spuštění skriptu, potom už bude feed přepisován až v případě, kdy bude zcela hotov (aby se na něj nečekalo). Vše probíhá v souboru |
Paráda, dobrá práce 👍 |
Doplnil jsem vlastnosti a varianty pro Zbozi.cz: 53bfd7c Docela mě překvapilo, že se nový feed pro Zbozi.cz mnohem více podobá Heurece, takže už tam nejsou skoro žádné rozdíly (nebo jsem si jich zatím nevšiml). Celý skript byl původně připravován jen na jednoduché (a odlišné) XML feedy a nyní jsme se už dostali do fáze, kdy to bude potřeba celé přepsat a generalizovat do jednoduchých funkcí nebo se v tom utopíme :-) Prosím vyzkoušejte (patrně tam budou nějaké chybky, na svých eshopech varianty nepoužívám), bude to asi zase chvíli trvat, pro urychlení je možné deaktivovat a znovu aktivovat XML feed pro Zbozi.cz v nastavení WooCommerce. |
@pavelevap |
Zkoušel někdo varianty v XML? Jsou s tím nějaké problémy? |
Dobrý večer pánové, mám problém, tak se napřed zeptám. Z heuréky se mi vrací u produktů s variantami varování, že se jedná o duplicity a produkty tak nejsou zařazeny do katalogu. Nejsem si jist co dělám špatně. Má být pole SKU vyplněna unikátně pro každou variantu produktu? Mám verzi 0.5-alpha. Další problém je že se vrací nevyplněná pole EAN. - na záložce nastavení feedu mám v poli EAN zadánu hodnotu SKU. Ve feedu pro zboží jsou v pořádku ale ve feedu pro heuréku mi pole EAN zcela chybí. (zkoušel jsem i přidat pole pro EAN pomocí návodu #22 ale ani tak se mi EAN ve feedu pro heureku nezobrazil. Děkuji za radu a přeji hezký den dUDLAJ |
@dudlaj: Díky za report! Zajímavé, varianty zatím nebyly moc testovány (nebo o tom nevím), takže tam mohou být problémy.
|
Dobrý den, Zkusím zadat SKU pro jednotlivé varianty produktu. Na začátku jsem to tak měl, ale pak jsem nabyl dojmu, že funguje právě spíše načítání SKU z hlavního produktu. Používám na zmiňovaném webu i doplněk Product Bundels od WooCommerce - jedná se konkrétně o tento web - http://beeranek.cz. Chyba z emailu s popisem: Chybový výpis z automatické kontroly pro vašeho programátora: Přeskočeno 5/24 položek. Příklady duplicitních produktů: XML soubor nesmí obsahovat více stejných URL adres. Popis chyby EAN je tento. chybí u 100% položek (24/24) EAN kód produktu. Díky EAN kódům dochází k rychlejšímu spárování vašich produktů do katalogu Heureky v případě PPC režimu. Ale zkusím ještě jednou zadat SKU pro jednotlivé varianty a uvidíme. Děkuji za rychlou odezvu. Pokud bych mohl být při vývoji jakkoliv nápomocen, pak se rád přidám. Hezký den dUDLAJ |
@dudlaj: Aha, tak tím se to asi trochu vysvětluje :-)
|
Dobrý den, jsem rád, že máme naprosto opačné problémy a přesto si rozumíme. Publikování asi není problém - BEERANEK je v podstatě můj sport - vymyslel jsem značku, dělám komplet marketing, včetně webu a textů - takže zde můžete posoudit mé možnosti v tomto směru. EAN upravím odpoledne ... a dám vědět, že je všechno na webu, tak jak má být pro testovaní. Není problém pro Vás vytvořit dočasný přístup, pokud byste si chtěl něco odzkoušet naživo. (udělal jsem zálohy) Děkuji mnohkrát za reakce i za skvělý plugin - jedna věc o které jsem přemýšlel je, že plugin nemá v repository en popis. Myslím, že by o plugin mohli mít zájem i cizinci, kteří chtějí prodávat v čechách ... Možná bych měl začít en verzí.. Hezký den dUDLAJ |
Dobrý den, Mám úplně stejný problém s těmi varitantami a duplicitní URL, tak jsem rád, že jsem tady na to narazil. Jen mi to nějak negeneruje .xml soubor, eshop mi jen napíše, že stránka neexistuje, když se na něj chci koukout. Platí to jak pro heuréku, tak pro zboží. /?feed=zbozi toto se generuje normálně. Ale zatím se s tím učím, tak třeba dělám něco špatně :) Mějte se, Marian |
Zkuste prosím stáhnout novou verzi pluginu, URL adresy by měly být unikátní (32e6954) a ještě můžete použít povedený plugin: https://wordpress.org/plugins/woocommerce-direct-variation-link/ A dejte prosím vědět, co na to Heureka :-) @dudlaj: Jak to nakonec dopadlo z EAN kódy? Používáte odlišné pro každou variantu? Nebo myslíte, že bychom měli podporovat i verzi, kdy mají všechny varianty stejný EAN? Spíše než EN verze bude potřeba lépe řešit slovenskou verzi :-) Myslíte, že by Američan měl v obchodě nastavenou angličtinu pro prodej v Česku? Myslel jsem, že dává smysl jen možnost češtiny a slovenštiny, ale rád se nechám přesvědčit. @Borsapv: Máte feedy povolené v nastavení na záložce "XML feed"? Soubory |
Děkuji, už jsem si to narychlo zprovoznil po svém, ale Vaše řešení v kombinaci s doporučeným pluginem je o mnoho lepší. Jen jsem si tam dovolil přidat řádek kódu, aby se odstranily duplicitní varianty z pole. Nevím jak to dělá, ale klientka má čas od času u produktu 2 naprosto identické varianty a tím pádem vznikají opět duplicitní URL pro heureku. XML feedy jsem povolené měl, ale zřejmě to chvíli trvalo, než se vytvořily. Druhý den už tam byly v pořádku. |
Dobrý den, otevřeně přiznávám, že jsem přepsal EAN až dnes (stydím se) - dřív jsem se k tomu nedostal. Za mě osobně - podpora "globalního" EAN nadřazeného produktu je zajímavá - především pro eshopy kde nejsou vyplněny EAN pro variace, na kterých by byl plugin doinstalován dodatečně. Jinak to asi úplně smysl nemá - nemám představu kolik by to bylo práce - nastavení by muselo být: použij EAN nadřazeného produktu, pokud není vyplněn EAN u variant - jakékoliv nastavení této možnosti v adminu je samozřejmě zbytečné. K EN verzi - myslel jsem popis v repository - myšleno tak, že by plugin mohl být užitečný pro někoho, kdo nemluví česky a chtěl by prodávat i zde v Čechách. Nevím do jaké míry jsem schopen pomoci se Slovenštinou, ale můžu to zkusit. Mám jeden zcela nový dotaz, když jsem zabýval problematikou feedu pro heureku, narazil jsem na jejich řazení do kategorií. Toto plugin vůbec neřeší... Přemýšlel jste o tom? Hezký den dUDLAJ |
Dobrý den, omluva z mé strany. EAN má mít 13 míst a já omylem zadával 12. Co se týče řazení do kategorií, upravoval jsem v rámci testování produkty s variantami, kde se vůbec nezobrazuje tab České služby. Na webu používám i product bundles a tam už České služby jsou.. Jinak co se týče kategorii - skvělá práce.. :-) Všechny duplicity u variant byly odstrarněny. Hezký den dUDLAJ |
Tak testoval jsem to. Nejnovsi verze ceske sluzby + https://wordpress.org/plugins/woocommerce-direct-variation-link/ . V predosli verzii byl problem s duplicitami u variant, ted s pluginem direct variantion link uz duplicity nejsou,ale ve fulltextu heureka se varianty nezobrazuji. TAB české služby se nezobrazuje u variantových produktú , v jiných jo. |
@lukasprelovsky: A je to problém pluginu nebo nějaké omezení na straně Heureky? Nemusíte mít placený tarif, aby se varianty zobrazovaly? Objevují se tam nějaké chyby při napárování? Pravda, záložka České služby se zobrazuje pouze u jednoduchých produktů kvůli třídě
|
|
Dobry den, nainstaloval jsem Vas plugin na svuj wordpress, a kdyz mackam na (Zbozi.cz nebo Heureka Muzete me prosim poradit jak mam opravit tady tu chybu? Dekuji |
@lukasprelovsky: Poprosím ještě o přístupy, abych to mohl zkusit dořešit, díky. @xolik: Odkaz na feed tam není nikde vložen? Obecně by to ale neměla žádná šablona ovlivňovat... |
@lukasprelovsky: U produktu s variantami lze nově také nastavit všechny potřebné informace: 2b9b6f8 @dudlaj: Zkusil jsem doplnit podobu globálního EAN, takže pokud je EAN zadán přímo u produktu a u variant (zatím) chybí, tak se u nich ale přesto bude zobrazovat EAN nadřazeného produktu: ba0dbb9. Původně jsem si myslel, že je EAN unikátní (nebo musí být), ale není tomu tak, např. barevné či velikostní varianty ho mohou mít stejný. Ale uvidíme, co na to uživatelé :-) |
Jsou s variantami nějaké zásadní potíže? |
Dobrý den, podívám se na jeden z webů, kde mám doplněk nainstalován (aktualizace) a Jaroslav Ondra Dne 1. 9. 2016 v 17:02 pavelevap napsal(a):
|
Omlouvám se za prodlevu. Včera jsem se dostal k instalaci doplňku na mém nejsložitějším eshopu. Eshop využívá plugin Composite products. Zatím mi Váš plugin složené produkty vůbec do feedu nenačítá, ale ještě se na to dnes podívám. |
Na zobrazení různých bundles je tu nová issue: #143. |
Dobrý den, je třeba někde manuálně generovat xml feed pro WooCommerce/České služby? Na adrese http://www.kryptoportfolio.cz/?feed=heureka mám pouze prázdný feed bez produktů. |
Pro některé eshopy je důležité generovat do XML i jednotlivé varianty.
The text was updated successfully, but these errors were encountered: