XML generátor seznamzbozi.cz

Prostě vychytávky.

XML generátor seznamzbozi.cz

Příspěvekod Kaspi88 » stř 17. pro 2008 20:42:48

funkční pro databazi s predefixem ps_

Kód: Vybrat vše
<?php

$shopUrl = 'www.vasedomena.cz';
$langCz = 10;
$cfgFile = dirname(__FILE__) . '/../config/settings.inc.php';
if (!file_exists($cfgFile))
{
    die('Skript musi byt umisten v rootu prestashopu v config/settings.inc.php musi byt nastaveni databaze.');
}

require_once($cfgFile);

$db = @MySQL_Connect(_DB_SERVER_, _DB_USER_, _DB_PASSWD_);
if (!$db)
{
    die('Nemohu se spojit s databazi.');
}

MySQL_Select_DB(_DB_NAME_, $db);
MySQL_Query("SET NAMES 'utf8'");

$res = MySQL_Query("
    SELECT
        c.id_category,
        c.id_parent,
        c.level_depth,
        l.name
    FROM ps_category c
    JOIN ps_category_lang l ON l.id_category = c.id_category AND l.id_lang = {$langCz}
    WHERE active = 1 AND level_depth > 0
    ORDER BY level_depth, id_category
");

$categories = array();
while ($row = MySQL_Fetch_Assoc($res))
{
    if ($row['level_depth'] == 1)
    {
    $categories[$row['id_category']] = $row['name'];
    }
    else
    {
    $categories[$row['id_category']] = $categories[$row['id_parent']] . " > " . $row['name'];
    }
}

echo "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n";
echo "<products>\n";

$res = MySQL_Query("
        SELECT
                p.id_product,
                p.quantity,
                p.price,
                p.reduction_price,
                p.reduction_percent,
                p.reduction_from,
                p.reduction_to,
                pl.name,
                pl.description_short,
                pl.link_rewrite,
                i.id_image,
        cp.id_category,
        m.name AS manufacturer
        FROM ps_product p
        JOIN ps_product_lang pl USING(id_product)
        JOIN ps_image i USING(id_product)
    JOIN ps_category_product cp USING(id_product)
    JOIN ps_category c USING(id_category)
    JOIN ps_manufacturer m USING(id_manufacturer)
        WHERE p.active = 1
        AND i.cover = 1
        AND cp.id_category > 1
        AND c.level_depth > 1
        ORDER BY p.id_product", $db);

$currentDate = date('Y-m-d');

while ($row = MySQL_Fetch_Assoc($res))
{
    $desc = strip_tags(html_entity_decode($row['description_short'], ENT_COMPAT, 'utf-8'));

    if ($result['reduction_from'] == $result['reduction_to']
            || ($result['reduction_from'] <= $currentDate
                    && $currentDate <= $result['reduction_to']))
    {
        if ($row['reduction_price'] && $row['reduction_price'] > 0)
        {
            if ($row['reduction_price'] >= $row['price'])
            {
                $reduction = $row['price'];
            }
            else
            {
                $reduction = $row['reduction_price'];
            }
        }
        elseif ($row['reduction_percent'] && $row['reduction_percent'] > 0)
        {
            if ($row['reduction_percent'] >= 100)
            {
                $reduction = $row['price'];
            }
            else
            {
                $reduction = $row['price'] * $row['reduction_percent'] / 100;
            }
        }
    }

    echo "<product>\n";
    echo "\t<code>" . $row['id_product'] . "</code>\n";
    echo "\t<category>" . $categories[$row['id_category']] . "</category>\n";
    echo "\t<manufacturer>" . $row['manufacturer'] . "</manufacturer>\n";
    echo "\t<name>" . $row['name'] . "</name>\n";
    echo "\t<description>" . mb_substr($desc, 0, 512, 'utf-8') . "</description>\n";
    echo "\t<price>" . round($row['price']*1.19-$reduction) . "</price>\n";
    echo "\t<image_url>http://" . $shopUrl . "/img/p/" .$row['id_product'] .
            "-" . $row['id_image'] . "-large.jpg</image_url>\n";
    echo "\t<product_url>http://" . $shopUrl . "/" . $row['id_product'] .
            "-" . $row['link_rewrite'] . ".html</product_url>\n";
    echo "</product>\n";
}

echo "</products>\n";

?>
Doporučuji české návody a rady o systému PrestaShop. Kvalitní šablony naleznete na Best PrestaShop Themes. Staňte se fanouškem na facebook stránce prestashop česky.
Kaspi88
Administrátor
 
Příspěvky: 257
Registrován: ned 21. zář 2008 18:47:39

Re: XML generátor seznamzbozi.cz

Příspěvekod Jeny » ned 15. úno 2009 21:32:10

Zdravim
soubor xml mam normalne v root a presto tahle hlaska
"Skript musi byt umisten v rootu prestashopu v config/settings.inc.php musi byt nastaveni databaze"

Nevim kde je chyba, diky za kazdou radu.
Jeny
 
Příspěvky: 13
Registrován: úte 10. úno 2009 3:02:26

Re: XML generátor seznamzbozi.cz

Příspěvekod Kaspi88 » pon 16. úno 2009 14:41:36

$langCz = 10; <-- ID češtiny (dneska v PS 1.1 mají všichni ID3)
$cfgFile = dirname(__FILE__) . '/../config/settings.inc.php'; <-- zde je cesta, nejspíše chyba v tvém případě je $cfgFile = dirname(__FILE__) . '/config/settings.inc.php';
Doporučuji české návody a rady o systému PrestaShop. Kvalitní šablony naleznete na Best PrestaShop Themes. Staňte se fanouškem na facebook stránce prestashop česky.
Kaspi88
Administrátor
 
Příspěvky: 257
Registrován: ned 21. zář 2008 18:47:39

Re: XML generátor seznamzbozi.cz

Příspěvekod Jeny » úte 17. úno 2009 3:00:01

Ahoj
Chyba byla skutecne v te ceste, ted uz to bezi, takhle vypado kod

<product>
<code>11</code>
<category>01.Svářecí technika &gt; Svařovací poloautomaty MIG/MAG</category>
<manufacturer>ETP</manufacturer>
<name>Autocomp 154</name>

<description>Technické data:napětí - 1x230 Vsvář. proud - 30-150 A&nbsp; /60%-70A/ 100%-55Adrát - 0,6-0,8 mmreg. stupně - 6příkon - 2,0 kVAjištění - 16 Arozměry ŠxVxD (mm) - 680x275x480váha - 39 kgKatalog. číslo: 154154</description>
<price>14716</price>
<image_url>http://www.vbk.cz/img/p/11-51-large.jpg</image_url>
<product_url>http://www.vbk.cz/11-autocomp-154.html</product_url>
</product>


Pokud tady ctu popis xml na Zbozi.cz http://napoveda.seznam.cz/cz/specifikace-xml.html
mel by byt kazdy produkt jeste uzavren v tagu <SHOPITEM></SHOPITEM>

coz v tomto pripade neni. Zkousel jsi v praxi jestli to funguje i takto??
Jeny
 
Příspěvky: 13
Registrován: úte 10. úno 2009 3:02:26

Re: XML generátor seznamzbozi.cz

Příspěvekod Kaspi88 » stř 18. úno 2009 13:48:22

já používám tento xml výstup už přes půl roku a žádný problém s ním nebyl ;)
Doporučuji české návody a rady o systému PrestaShop. Kvalitní šablony naleznete na Best PrestaShop Themes. Staňte se fanouškem na facebook stránce prestashop česky.
Kaspi88
Administrátor
 
Příspěvky: 257
Registrován: ned 21. zář 2008 18:47:39

Re: XML generátor seznamzbozi.cz

Příspěvekod Jeny » čtv 19. úno 2009 11:29:13

Super, díky, zkusím ;)
Jeny
 
Příspěvky: 13
Registrován: úte 10. úno 2009 3:02:26

Re: XML generátor seznamzbozi.cz

Příspěvekod bbmotocentrum » úte 17. bře 2009 15:50:55

zdravím pánové.

I když to bude vypadat jako dotaz blba.

Co mám přesně udělat s tím kodem který je tady napsaný.
bbmotocentrum
 
Příspěvky: 28
Registrován: stř 15. říj 2008 14:06:13

Re: XML generátor seznamzbozi.cz

Příspěvekod Polka » pon 12. říj 2009 12:06:22

Zde uvedene skripty jsou imho spatne pouzitelne a navic chybne. My jsme vytvorili prehlednou spravu 16 XML exportu zbozi v administraci + export pro prodejce (velkoobchodni odberatele) i s parametry zbozi. Jednim kliknutim vygenerujete vsechny XML exporty. K dispozici na http://www.broucek-a-beruska.cz/moduly-prestashop/
Polka
 
Příspěvky: 8
Registrován: pon 31. srp 2009 0:47:45


Zpět na Tipy a triky

Kdo je online

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

cron