Ошибка API Prestashop: Категория свойств->link_rewrite недопустима

#prestashop #prestashop-1.7

Вопрос:

Я пытаюсь изменить категорию через API Prestashop, но у меня ошибка:

Ошибка проверки: «Категория свойств-gt;link_rewrite недопустима»

Я использую Postman, чтобы внести свои изменения, но даже если я просто скопирую и пропущу результат GET в теле вызова PUT, результат выдаст мне эту ошибку.

это то, что я отправляю в теле вызова PUT:

 lt;?xml version="1.0" encoding="UTF-8"?gt; lt;prestashop xmlns:xlink="http://www.w3.org/1999/xlink"gt;  lt;categorygt;  lt;idgt;  lt;![CDATA[3]]gt;  lt;/idgt;  lt;id_parent xlink:href="http://localhost/prestashop/api/categories/2"gt;  lt;![CDATA[2]]gt;  lt;/id_parentgt;      lt;activegt;  lt;![CDATA[1]]gt;  lt;/activegt;  lt;id_shop_defaultgt;  lt;![CDATA[1]]gt;  lt;/id_shop_defaultgt;  lt;is_root_categorygt;  lt;![CDATA[0]]gt;  lt;/is_root_categorygt;  lt;positiongt;  lt;![CDATA[0]]gt;  lt;/positiongt;  lt;date_addgt;  lt;![CDATA[2021-11-18 16:10:04]]gt;  lt;/date_addgt;  lt;date_updgt;  lt;![CDATA[2021-11-18 16:10:04]]gt;  lt;/date_updgt;  lt;namegt;  lt;language id="1" xlink:href="http://localhost/prestashop/api/languages/1"gt;  lt;![CDATA[Clothes]]gt;  lt;/languagegt;  lt;language id="2" xlink:href="http://localhost/prestashop/api/languages/2"gt;  lt;![CDATA[Clothes]]gt;  lt;/languagegt;  lt;/namegt;  lt;link_rewritegt;  lt;language id="1" xlink:href="http://localhost/prestashop/api/languages/1"gt;  lt;![CDATA[clothes]]gt;  lt;/languagegt;  lt;language id="2" xlink:href="http://localhost/prestashop/api/languages/2"gt;  lt;![CDATA[clothes]]gt;  lt;/languagegt;  lt;/link_rewritegt;  lt;descriptiongt;  lt;language id="1" xlink:href="http://localhost/prestashop/api/languages/1"gt;  lt;![CDATA[lt;pgt;Discover our favorites fashionable discoveries, a selection of cool items to integrate in your wardrobe. Compose a unique style with personality which matches your own.lt;/pgt;]]gt;  lt;/languagegt;  lt;language id="2" xlink:href="http://localhost/prestashop/api/languages/2"gt;  lt;![CDATA[lt;pgt;Discover our favorites fashionable discoveries, a selection of cool items to integrate in your wardrobe. Compose a unique style with personality which matches your own.lt;/pgt;]]gt;  lt;/languagegt;  lt;/descriptiongt;  lt;meta_titlegt;  lt;language id="1" xlink:href="http://localhost/prestashop/api/languages/1"gt;  lt;![CDATA[]]gt;  lt;/languagegt;  lt;language id="2" xlink:href="http://localhost/prestashop/api/languages/2"gt;  lt;![CDATA[]]gt;  lt;/languagegt;  lt;/meta_titlegt;  lt;meta_descriptiongt;  lt;language id="1" xlink:href="http://localhost/prestashop/api/languages/1"gt;  lt;![CDATA[]]gt;  lt;/languagegt;  lt;language id="2" xlink:href="http://localhost/prestashop/api/languages/2"gt;  lt;![CDATA[]]gt;  lt;/languagegt;  lt;/meta_descriptiongt;  lt;meta_keywordsgt;  lt;language id="1" xlink:href="http://localhost/prestashop/api/languages/1"gt;  lt;![CDATA[]]gt;  lt;/languagegt;  lt;language id="2" xlink:href="http://localhost/prestashop/api/languages/2"gt;  lt;![CDATA[]]gt;  lt;/languagegt;  lt;/meta_keywordsgt;  lt;associationsgt;  lt;categories nodeType="category" api="categories"gt;  lt;category xlink:href="http://localhost/prestashop/api/categories/4"gt;  lt;idgt;  lt;![CDATA[4]]gt;  lt;/idgt;  lt;/categorygt;  lt;category xlink:href="http://localhost/prestashop/api/categories/5"gt;  lt;idgt;  lt;![CDATA[5]]gt;  lt;/idgt;  lt;/categorygt;  lt;/categoriesgt;  lt;products nodeType="product" api="products"gt;  lt;product xlink:href="http://localhost/prestashop/api/products/1"gt;  lt;idgt;  lt;![CDATA[1]]gt;  lt;/idgt;  lt;/productgt;  lt;product xlink:href="http://localhost/prestashop/api/products/2"gt;  lt;idgt;  lt;![CDATA[2]]gt;  lt;/idgt;  lt;/productgt;  lt;/productsgt;  lt;/associationsgt;  lt;/categorygt; lt;/prestashopgt;  

Ответ №1:

Пожалуйста, приложите именно то, что вы отправляете, так как это слишком мало информации, чтобы ответить на ваш вопрос осмысленно. Вполне возможно, что то, что вы отправляете, действительно недействительно.

В PrestaShop поля link_rewrite должны иметь тип URL.

Если вы используете PHP для генерации значения, вы можете использовать метод Tools::str2url() PrestaShop.