Мы создали xml-канал в Magento для некоторых продуктов из разных категорий. Некоторые продукты имеют название с &или название бренда с /. Когда мы генерируем фид, фид выдает ошибку.
В предыдущих каналах мы использовали эту строку кода:
<name><? return str_replace("&", "&", "{name}"); ?></name>
повернуть &
в &
и это сработало. Теперь нам нужно сделать то же самое с /
, Нам нужно повернуть /
в ‘и’ или что-то подобное.
В нашем фиде xml есть 2 (разные) строки кодов, куда мы можем вставить str_replace:
<? if ("{name}" != "") return "<li><b>Name:</b> {name}</li>"; ?>
а также
<name>{name}</name>
Куда следует вставлять str_replace?
Я получил рабочий XML.
<serie><? return str_replace(array('&', '/') , array('&','and'), "{serie}"); ?></serie>
сделал трюк для меня.
{Serie} в конце кода был проблемой. Я не понимаю, почему это работало в предыдущих каналах, но вы не слышите, чтобы я жаловался, ха-ха.
Благодарю.
Не используйте str_replace в этом случае, для этого есть функция htmlentities: https://secure.php.net/manual/en/function.htmlentities.php