Skip to content

Commit

Permalink
First version of my YML Generator (2015 year)
Browse files Browse the repository at this point in the history
  • Loading branch information
Svitavsky committed Nov 8, 2020
0 parents commit 78304d9
Showing 1 changed file with 124 additions and 0 deletions.
124 changes: 124 additions & 0 deletions yandexImport.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,124 @@
<?php

header('Content-type: application/xml');
header("Content-Type: text/xml; charset=utf-8");

$host = 'localhost'; //Âïèñàòü ñåðâåð áä
$user = 'detryer'; //Âïèñàòü èìÿ ïîëüçîâàòåëÿ
$password = '2303391'; //Âïèñàòü ïàðîëü
$database = 'opencart'; //Âïèñàòü èìÿ áàçû äàííûõ

$mysqli = new mysqli('localhost', 'detryer', '2303391', 'opencart');
if ($mysqli->connect_errno) {
echo "Íå óäàëîñü ïîäêëþ÷èòüñÿ ê MySQL: (" . $mysqli->connect_errno . ") " . $mysqli->connect_error;
}

$mysqli->query("SET NAMES 'utf-8'");
# Íà÷èíàåì ãåíåðèðîâàòü XML
# ïåðåìåííûå äëÿ çàãîëîâêà
$cdate = date("Y-m-d H:i",time());
$csite = "localhost";//Âïèñàòü àäðåñ èíòåðíåò-ìàãàçèíà
$cname = "wdwad";//Âïèñàòü íàçâàíèå èíòåðíåò-ìàãàçèíà
$cdesc = "wadawd";//Âïèñàòü îïèñàíèå èíòåðíåò-ìàãàçèíà
#----------------------------------------------
$yandex=<<<END
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE yml_catalog SYSTEM "shops.dtd">
<yml_catalog date="$cdate">
<shop>
<name>$cname</name>
<company>$cdesc</company>
<url>$csite</url>
<currencies>
<currency id="RUR" rate="1"/>
</currencies>
END;
$arr_cats = array();
#----------------------------------------------
# äëÿ ßíäåêñà âûâîäèì âñå ïîäêàòåãîðèè
$yandex .= "\n\n<categories>\n";
$category = "
SELECT
c.category_id as categoryID, c.parent_id as parent, cd.name as name
FROM
oc_abccategory as c, oc_abccategory_description as cd where c.category_id = cd.category_id AND cd.language_id=1
ORDER BY
parent, name";

$res = $mysqli->query($category);

while ($rezzzz = $res->fetch_assoc()){
#ýêðàíèðóåì ñïåöñèìâîëû
$rezzzz['name']=htmlspecialchars($rezzzz['name']);
$fftt = " <category id=\"".$rezzzz['categoryID']."\"";
if($rezzzz['parent']>0) $fftt .= " parentId=\"".$rezzzz['parent']."\"";
$fftt.= ">".$rezzzz['name']."</category>\n";
$yandex .= $fftt;

$arr_cats[$rezzzz['categoryID']]=$rezzzz;
}
$yandex .= "</categories>\n";
#----------------------------------------------
$yandex .="\n<offers>\n";

#----- YANDEX ------
$goods = "
SELECT
p.product_id AS productID,
p.price AS price,
p.status AS in_stock,
pd.product_id,
pd.name AS name,
pd.description AS description,
pc.category_id AS categoryID,
pc.product_id,
i.image as image
FROM
oc_abcproduct AS p,
oc_abcproduct_description AS pd,
oc_abcproduct_to_category AS pc,
oc_abcproduct_image AS i
WHERE
p.price>0
AND pd.product_id=p.product_id
AND pc.product_id=p.product_id
AND i.product_id=p.product_id
AND p.status=1
AND pd.language_id=1
ORDER BY name";

$rez = $mysqli->query($goods);
while ($tovar = $rez->fetch_assoc()) {
$valuta="RUR";//èçìåíèòü íà íóæíóþ âàëþòó
$price=$tovar['price'];
$price=intval($price);
$description=htmlspecialchars(strip_tags($tovar['description']));
$tovar['name'] = htmlspecialchars($tovar['name']);

#ôîòîãðàôèÿ
if ($tovar['image'] != "") {
$src_file = $csite."image/".$tovar['image'];
$ppy = "<picture>".$src_file."</picture>";
} else {
$ppy = "";
}
#----------------------------------------------
$yandex.=<<<END
<offer id="$tovar[productID]" available="true">
<url>{$csite}catalog/$tovar[categoryID]-p-$tovar[productID].html</url>
<price>$price</price>
<currencyId>$valuta</currencyId>
<categoryId>$tovar[categoryID]</categoryId>
$ppy
<name>$tovar[name]</name>
<description>$description</description>
</offer>
END;
}

$yandex .= "</offers>\n</shop>\n</yml_catalog>\n";

#âûâîäèì, ÷òî íàãåíåðèëè
echo $yandex;

?>

0 comments on commit 78304d9

Please sign in to comment.