Právě je 24 dub 2024 07:18

Všechny časy jsou v UTC + 1 hodina [ Letní čas ]




Odeslat nové téma Odpovědět na téma  [ Příspěvků: 8 ] 
Autor Zpráva
 Předmět příspěvku: PrestaShop - Implementace features (vlastností) do XML feedu
PříspěvekNapsal: 18 črc 2012 15:46 

Registrován:
20 čer 2011 11:30
Příspěvky:
72
Dobrý den,
chtěl bych poprosit odborníku o radu s implementací features do php feedu. Již několik dní se o to marně snažím a stále se mi to nedaří. Dospěl jsem do stádia:
Kód:
// features                   
           $features = Product::getFeaturesStatic($product->id);
           foreach($features as $feature){
           $feature_lang = Feature::getFeature($id_lang,$feature['id_feature']);
           $feature_name = $feature_lang['name'];
            $xml .="<PARAM>\n";
            $xml .="<PARAM_NAME>".$feature_name."</PARAM_NAME>\n";
            $feature_value_lang = FeatureValue::getFeatureValueLang($feature_value_lang['id_feature_value']);                             
            $xml.="<VAL>".$feature_value_lang['value']."</VAL>\n";               
            $xml .="</PARAM>\n";
            }



Kdy výstup vypadá takhle:
Kód:
PARAM>
<PARAM_NAME>07 Objem:</PARAM_NAME>
<VAL/>
</PARAM>
<PARAM>
<PARAM_NAME>06 Balení:</PARAM_NAME>
<VAL/>
</PARAM>
<PARAM>
<PARAM_NAME>05 Určeno pro:</PARAM_NAME>
<VAL/>
</PARAM>
<PARAM>
<PARAM_NAME>04 Druh vlasů:</PARAM_NAME>
<VAL/>
</PARAM>
<PARAM>
<PARAM_NAME>03 Typ:</PARAM_NAME>
<VAL/>
</PARAM>
<PARAM>
<PARAM_NAME>01 Výrobce:</PARAM_NAME>
<VAL/>
</PARAM>


Bohužel se mi stále nedaří získat hodnoty VAL. Také se mi ani nedaří odstranit z feedu číslovky určující pořadí parametru (např. 04). Děkuji za jakékoliv vodítko a nápovědu.

S pozdravem a přáním hezkého dne
Filip Konečný

_________________
Provozovatel e-shopu INhair.cz na systému Prestashop verze 1.4.3.


Nahoru
 Profil  
 
 Předmět příspěvku: Re: PrestaShop - Implementace features (vlastností) do XML feedu
PříspěvekNapsal: 19 črc 2012 11:45 
C4 podpora
C4 podpora

Registrován:
01 lis 2011 15:02
Příspěvky:
746
Dobrý den.

Pokud jde o odstranění čísel (zřejmě jsou přídány v souvislosti s řazením vlastností produktu): Stačí odříznout první znaky řetězce, což se ale provádí jinak v PHP a jinak v kódy Smarty (soubory TPL).
Váš kód vypadá jako čisté PHP a v tom případě by řádek
Kód:
$xml .="<PARAM_NAME>".$feature_name."</PARAM_NAME>\n";
měl vypadat takto:
Kód:
$xml .="<PARAM_NAME>".trim(substr($feature_name,2))."</PARAM_NAME>\n";

Nebo alternativně lze upravit řádek
Kód:
$feature_name = $feature_lang['name'];
na
Kód:
$feature_name = trim(substr($feature_lang['name'],2));



Co se týče výpisu VAL: je podivné, že Vámi uvedený úsek kódu obsahuje
Kód:
$xml.="<VAL>".$feature_value_lang['value']."</VAL>\n";
takže do výpisu XML by měl přidávat přinejmenším
Kód:
<VAL></VAL>
Namísto toho se ale v XML objevuje
Kód:
<VAL/>
což musí být generováno jiným úsekem kódu.

_________________
Adam Chyský
Webhosting C4
http://www.c4.cz/


Nahoru
 Profil  
 
 Předmět příspěvku: Re: PrestaShop - Implementace features (vlastností) do XML feedu
PříspěvekNapsal: 20 črc 2012 07:30 
Uživatelský avatar

Registrován:
03 bře 2011 23:21
Příspěvky:
640
Mělo by tam být
Kód:
$feature_value_lang = FeatureValue::getFeatureValuesWithLang($id_lang, $feature['id_feature_value']); 

_________________
M4 Vše v jednom SEO - snadný a na funkce bohatý SEO plugin
https://www.presta-addons.com


Nahoru
 Profil  
 
 Předmět příspěvku: Re: PrestaShop - Implementace features (vlastností) do XML feedu
PříspěvekNapsal: 20 črc 2012 12:09 

Registrován:
20 čer 2011 11:30
Příspěvky:
72
Tak jsem trochu pokročil, v současné době mám:
Kód:
// features                   
          $features = Product::getFeaturesStatic($product->id);
          foreach($features as $feature){
          $feature_lang = Feature::getFeature($id_lang,$feature['id_feature']);
          $feature_name = $feature_lang['name'];
          $xml .="<PARAM>\n";
          $xml .="<PARAM_NAME>".trim(substr($feature_name,2))."</PARAM_NAME>\n";
          $feature_value_lang = FeatureValue::getFeatureValuesWithLang($id_lang, $feature['id_feature_value']);
          $feature_value_name = $feature_value_lang['value'];                           
          $xml.="<VAL>".$feature_value_name."</VAL>\n";
          $xml.="<VAL>".trim(substr($feature_name,2))."</VAL>\n";               
          $xml .="</PARAM>\n";
         }


S výsledným výstupem:
Kód:
<PARAM>
<PARAM_NAME>Objem:</PARAM_NAME>
<VAL/>
<VAL>Objem:</VAL>
</PARAM>


Takže předpokládám, že chyba bude někde v definici funkce pro feature_value_lang a z toho důvodu se mi nevypíše pro ten řádek asi ani <VAL></VAL>, protože když zkusím generovat do VAL feature_name, tak to bez problémů projde.

_________________
Provozovatel e-shopu INhair.cz na systému Prestashop verze 1.4.3.


Nahoru
 Profil  
 
 Předmět příspěvku: Re: PrestaShop - Implementace features (vlastností) do XML feedu
PříspěvekNapsal: 20 črc 2012 12:36 
Uživatelský avatar

Registrován:
03 bře 2011 23:21
Příspěvky:
640
Zkus si tam pro odladění zobrazit obsah těch polí, s kterými pracuješ:

např. $xml .= var_export($feature_value_lang, true);

_________________
M4 Vše v jednom SEO - snadný a na funkce bohatý SEO plugin
https://www.presta-addons.com


Nahoru
 Profil  
 
 Předmět příspěvku: Re: PrestaShop - Implementace features (vlastností) do XML feedu
PříspěvekNapsal: 20 črc 2012 12:43 

Registrován:
20 čer 2011 11:30
Příspěvky:
72
Mockrát Vám děkuji za reakci. Vím, že jsem možná otravný a mám přihlouplé dotazy. Ale kodóváním a programováním jsem nepolíben a i ten zbytek kódu jsem vytvořil pokus omyl.

Při vložení do php
Kód:
$xml .= var_export($feature_value_lang, true);

to vypíše navíc řádek
Kód:
array ( )

_________________
Provozovatel e-shopu INhair.cz na systému Prestashop verze 1.4.3.


Nahoru
 Profil  
 
 Předmět příspěvku: Re: PrestaShop - Implementace features (vlastností) do XML feedu
PříspěvekNapsal: 20 črc 2012 13:43 
Uživatelský avatar

Registrován:
03 bře 2011 23:21
Příspěvky:
640
Pak $feature_value_lang je prázdné pole, neboli nejsou data a nemůže se nic zobrazovat.

_________________
M4 Vše v jednom SEO - snadný a na funkce bohatý SEO plugin
https://www.presta-addons.com


Nahoru
 Profil  
 
 Předmět příspěvku: Re: PrestaShop - Implementace features (vlastností) do XML feedu
PříspěvekNapsal: 23 črc 2012 00:28 
C4 podpora
C4 podpora

Registrován:
01 lis 2011 15:02
Příspěvky:
746
Dobrý den.

První řádek z této dvojice
Kód:
          $xml.="<VAL>".$feature_value_name."</VAL>\n";
          $xml.="<VAL>".trim(substr($feature_name,2))."</VAL>\n";
je každopádně nutno odstranit.
Druhý vypisuje jméno, což ale zde není žádoucí.
Výpis hodnoty je jiná věc. Snažím se to vyřešit, ale pokud nemám k dispozici celý kód, nemohu zjistit, v čem by mohla být chyba.
Pokud používáte nějaký modul, dejte vědět jeho jméno. Pokud jde o váš kód, bude nutno ho zde publikovat.

_________________
Adam Chyský
Webhosting C4
http://www.c4.cz/


Nahoru
 Profil  
 
Zobrazit příspěvky za předchozí:  Seřadit podle  
Odeslat nové téma Odpovědět na téma  [ Příspěvků: 8 ] 

Všechny časy jsou v UTC + 1 hodina [ Letní čas ]


Kdo je online

Uživatelé procházející toto fórum: Žádní registrovaní uživatelé a 0 návštevníků


Nemůžete zakládat nová témata v tomto fóru
Nemůžete odpovídat v tomto fóru
Nemůžete upravovat své příspěvky v tomto fóru
Nemůžete mazat své příspěvky v tomto fóru
Nemůžete přikládat soubory v tomto fóru

Hledat:
Přejít na:  
cron
FTP Uploader
Staňte se naším zákazníkem!
Hledáme kolegy
PrestaShop partneři

Seznam všech partnerů

PrestaShop Hosting
Návody pro C4

© 2009-2024 ČESKÝ WEBHOSTING s.r.o. Kontaktní e-mail: forum@c4.cz
Diskuzní fórum využívá technologie: phpBB, phpBB-SEO.com, phpBB.cz