xml_export_documentation:xml_format
Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
xml_export_documentation:xml_format [2019/10/01 16:34] lukas [usergroups] |
xml_export_documentation:xml_format [2020/03/17 10:42] pavel (small fix - there where 2 dots) |
||
---|---|---|---|
Line 9: | Line 9: | ||
* Unless you have an enterprise-contract the shop data will be imported by FINDOLOGIC automated daily at a fixed time between 01:00 CET and 06:00 CET. | * Unless you have an enterprise-contract the shop data will be imported by FINDOLOGIC automated daily at a fixed time between 01:00 CET and 06:00 CET. | ||
- | * You can either write your own export script, provide a completely finished XML-file for the import, or use a plugin provided by FINDOLOGIC. | + | * Export script can be written with [[https://github.com/findologic/libflexport/wiki#initializing-the-exporter-with-a-specific-type|FINDOLOGIC export library]] or by your own. |
* You can find a detailed description of all available tags in our XML-patterns below. | * You can find a detailed description of all available tags in our XML-patterns below. | ||
Line 15: | Line 15: | ||
* The latest XML scheme for validation can be found on Github: [[https://github.com/FINDOLOGIC/xml-export/blob/master/src/main/resources/findologic.xsd|FINDOLOGIC XML-Schema]]. Check your XML against the scheme and see if your export XML is valid: [[https://www.corefiling.com/opensource/schemaValidate.html]] | * The latest XML scheme for validation can be found on Github: [[https://github.com/FINDOLOGIC/xml-export/blob/master/src/main/resources/findologic.xsd|FINDOLOGIC XML-Schema]]. Check your XML against the scheme and see if your export XML is valid: [[https://www.corefiling.com/opensource/schemaValidate.html]] | ||
- | <note>The XML-export has to be provided as direct link to the XML-file in the customer login - if needed with login and password (HTML basic access authentication).</note> | + | <note>Link to the script-file that triggers XML-export has to be provided in the customer login - if needed with login and password (HTML basic access authentication).</note> |
<note>FINDOLOGIC supports all encodings. It just needs to get mentioned at the start of the XML e.g. ''<?xml version="1.0" encoding="UTF-8"?>'' </note> | <note>FINDOLOGIC supports all encodings. It just needs to get mentioned at the start of the XML e.g. ''<?xml version="1.0" encoding="UTF-8"?>'' </note> | ||
Line 32: | Line 32: | ||
^ Item ^ Short Description ^ Tag required ^ Value required ^ Will be searched ^ | ^ Item ^ Short Description ^ Tag required ^ Value required ^ Will be searched ^ | ||
^**''<?xml version=“...” encoding=“...”?>''**| Specifies the encoding | Yes | Yes | No | | ^**''<?xml version=“...” encoding=“...”?>''**| Specifies the encoding | Yes | Yes | No | | ||
- | ^**''<[[#item]] id="">''**| Unique identification number | Yes | Yes | No | | + | ^**''<[[#item]] id="">''**| Unique identifier | Yes | Yes | No | |
^**''<[[#ordernumbers]]>''**| Article number or order number | Yes | No | Yes | | ^**''<[[#ordernumbers]]>''**| Article number or order number | Yes | No | Yes | | ||
^**''<[[#names]]>''**| Article name, as usually shown on the result page | Yes | Yes | Yes | | ^**''<[[#names]]>''**| Article name, as usually shown on the result page | Yes | Yes | Yes | | ||
Line 38: | Line 38: | ||
^**''<[[#descriptions]]>''**| Detailed article description | Yes | No | Yes | | ^**''<[[#descriptions]]>''**| Detailed article description | Yes | No | Yes | | ||
^**''<[[#prices]]>''**| Current article price including taxes | Yes | Yes | **filterable only** | | ^**''<[[#prices]]>''**| Current article price including taxes | Yes | Yes | **filterable only** | | ||
- | ^**''<[[#urls]]>''**| URL to the article page, must be absolute | Yes | No | No | | + | ^**''<[[#urls]]>''**| URL to the article page, must be absolute | Yes | Yes | No | |
^**''<[[#images]]>''**| URL to the article image, must be absolute. | Yes | No | No | | ^**''<[[#images]]>''**| URL to the article image, must be absolute. | Yes | No | No | | ||
^**''<[[#keywords]]>''**| Keywords linked to current article | Yes | No | Yes | | ^**''<[[#keywords]]>''**| Keywords linked to current article | Yes | No | Yes | | ||
- | ^**''<[[#usergroups]]>''**| Visibility of article, i.e. only visible to the exported usergroups. see [[xml_export_documentation:xml_format#Calculating the usergroup-hash|how to generate usergrouphashes]] | Yes | No | No | | + | ^**''<[[#usergroups]]>''**| Visibility of article, i.e. only visible to the exported usergroups | Yes | No | No | |
^**''<[[#bonuses]]>''**| Bonus value to rank certain articles higher than others | No | No | No | | ^**''<[[#bonuses]]>''**| Bonus value to rank certain articles higher than others | No | No | No | | ||
^**''<[[#salesfrequencies]]>''**| Amount of sold items of this article | Yes | No | No | | ^**''<[[#salesfrequencies]]>''**| Amount of sold items of this article | Yes | No | No | | ||
Line 74: | Line 74: | ||
* ''<items>'' gives information about the start-pointer (''start''), how many products are exported per step (''count'') and how many products exists in the shop in total (''total''). For more information see [[xml_export_documentation:xml_request_and_response|Export]] | * ''<items>'' gives information about the start-pointer (''start''), how many products are exported per step (''count'') and how many products exists in the shop in total (''total''). For more information see [[xml_export_documentation:xml_request_and_response|Export]] | ||
* ''<items>'' may contain 1+ ''<item>''-tags. | * ''<items>'' may contain 1+ ''<item>''-tags. | ||
+ | |||
+ | <note important>Due to runtime limitations the XML-export has to be [[https://docs.findologic.com/doku.php?id=xml_export_documentation:xml_request_and_response|paginated]].</note> | ||
<note tip>**Using our export toolkit?** | <note tip>**Using our export toolkit?** | ||
Line 253: | Line 255: | ||
* ''<images>'' contains 1+ ''<image>''-tags. | * ''<images>'' contains 1+ ''<image>''-tags. | ||
* ''<image>'' contains an URL of an image. | * ''<image>'' contains an URL of an image. | ||
- | * If there is no image for a product, the shop-specific "No Image Available" image has to be exported. | + | * If there is no image for a product, the shop-specific "No Image Available" should be exported. |
<note tip>**Using our export toolkit?** | <note tip>**Using our export toolkit?** | ||
Line 304: | Line 306: | ||
* ''<usergroup>'' contains 1+ ''<usergroup>''-tags. | * ''<usergroup>'' contains 1+ ''<usergroup>''-tags. | ||
* ''<usergroup>'' contains a usergroup to which the item is visible. | * ''<usergroup>'' contains a usergroup to which the item is visible. | ||
- | * ''<usergroup>'' the usergroup in the datafeed (e.g.'<name usergroup="employee") has to have the exact same name as the usergroup used as parameter the FINDOLOGIC-Snippet. | + | * ''<usergroup>'' the usergroup used as a parameter in the FINDOLOGIC-Snippet has to have the exact same wording as the usergroup that is used in the datafeed. |
=== Using usergroups to set the visibility of items === | === Using usergroups to set the visibility of items === | ||
Line 332: | Line 334: | ||
=== Recommendation === | === Recommendation === | ||
* In case of more than 128 ''<usergroups>'', please contact [[mailto:support@findologic.com|support@findologic.com]], in order to adjust default settings. | * In case of more than 128 ''<usergroups>'', please contact [[mailto:support@findologic.com|support@findologic.com]], in order to adjust default settings. | ||
- | * The value in the CDATA-block of the ''<usergroup>''-tag will be encoded as described below to prevent a manipulation of the search-requests (e.g. R-rating): | + | * To avoid potential misunderstandings, preferably use alphanumeric values for usergroups (e.g. ''18plus'', ''B2B''). |
Line 339: | Line 340: | ||
Creating an ''<usergroup>'' element with [[https://github.com/findologic/libflexport/wiki#usergroup|libflexport]].</note> | Creating an ''<usergroup>'' element with [[https://github.com/findologic/libflexport/wiki#usergroup|libflexport]].</note> | ||
- | |||
- | |||
- | === Calculating the usergroup-hash === | ||
- | |||
- | The usergroup-hash is composed of two components: | ||
- | |||
- | * the shopkey (e.g. ''A6039131315BE9F868E358D5AC784405'') | ||
- | * The combined usergroups (z.B. 'at_ratedR') | ||
- | |||
- | These components are put together with ''xor'' and base64 and thus can be decoded. | ||
- | |||
- | === Example: === | ||
- | |||
- | <code php> | ||
- | $shopkey = 'A6039131315BE9F868E358D5AC784405'; | ||
- | $usergroup = 'at_ratedR'; | ||
- | $hash = base64_encode($shopkey ^ $usergroup); // = 'IEJvQVhFVlVh' | ||
- | |||
- | $usergroup_decoded = ($shopkey ^ base64_decode($hash)); // = 'at_ratedR'; | ||
- | </code> | ||
- | |||
- | ---- | ||
- | |||
==== bonuses ==== | ==== bonuses ==== | ||