Вопрос по урлам товаров магазина

#
Re: Вопрос по урлам товаров магазина
Я так понимаю, что подмену нужно делать вот здесь:
<xsl:template match="group">
   <xsl:variable name="parent_id" select="@parent"/>
   <table width="300px">
      <tr><td align="center">
         <a href="{/shop/path}{fullpath}" style="font-weight: 10pt;color:#0a682a;font-weight: normal; ">
         <xsl:value-of disable-output-escaping="yes" select="name"/>&#xA0;<b>(<xsl:value-of select="count_all_items"/>)</b></a>
      </td></tr>
      <tr> <td align="center">
         <xsl:if test="small_image != ''">
         <a href="{/shop/path}{fullpath}"><img src="{small_image}"  style="border: 1px solid #000000;"/></a>   </xsl:if>
         <xsl:if test="count(group) &gt; 1">
   <xsl:apply-templates select="group" mode="sub_group"/>
         </xsl:if>
      </td></tr>
   </table>
   <!-- Если есть изображение для группы - выводим его -->
   
   
   <xsl:if test="position()= round(count(//group[@parent = $parent_id]) div 2)">
      <xsl:text disable-output-escaping="yes">
         &lt;/td&gt;
         &lt;td valign="top" width="50%"&gt;
      </xsl:text>
   </xsl:if>
</xsl:template>

<!-- Шаблон для подразделов -->
<xsl:template match="group" mode="sub_group">
   <a href="{/shop/path}{fullpath}">
      <xsl:value-of disable-output-escaping="yes" select="name"/>
   </a>
   <xsl:variable name="parent_id" select="@parent"/>
   <!-- Ставим запятую после группы, за которой следуют еще группы из данной родителской группы -->
   <xsl:if test="position() != last() and count(//group[@parent = $parent_id]) &gt; 1">,&#xA0;</xsl:if>
</xsl:template>

Это кусок шаблона "МагазинКаталогТоваров".

А может делать подмену прямо в динамических страницах?
#
Re: Вопрос по урлам товаров магазина
ничего не выйдет, особенно с хлебными крошками
можно транслировать содержимое через kernel - GetUrl, например, как транслируется /sitemap/ в файле sitemap.php...т е в корне вручную создавать узлы типа Динамическая страница под каждую страницу, и в настройки страницы - код трансляции... при этом страница будет дублироваться, что наверно не понравится оптимизаторам, хотя это можно поправить через disallow в robots.
+ редирект - либо делать редирект в htaccess, на эти страницы, либо какой то доп свойство у групп создать, "редирект", куда прописывать другой url, и выдавать его вместо оригинального в xsl
#
Re: Вопрос по урлам товаров магазина
по смарти

{$body|replace:“\»/shop/plenka/pishhevaja-plenka/\“»:“\»/pishhevaja-plenka\“»}

похоже это только строчку меняет, а что отвечает за вывод страницы этому по адресу? /pishhevaja-plenka/
#
Re: Вопрос по урлам товаров магазина
h4mpy,
а можно немного по подробнее во вашему предпоследнему сообщению?

по смарти.

Здесь суть такая.
1. Есть урл товара /shop/plenka/pishhevaja-plenka/. Из CMS его изменить нельзя, кроме последней части uri.
2. Чтобы из этого получилось /pishhevaja-plenka, сохраняя весь порядок хлебных крошек и структуру других урл (вложенные товары/категории и проч, ведь у остальных страниц адреса трогать нельзя!), я делал следующее:
- сохраняем страницу с изменяемым урл в html, кладем в корень сайта с названием pishhevaja-plenka.html
- в htaccess'e делаем:
RewriteRule ^shop/plenka/pishhevaja-plenka/$ /pishhevaja-plenka [R=301,L] #для поисковиков показываем, что старого адреса уже нет.
RewriteRule ^pishhevaja-plenka$ /pishhevaja-plenka.html [L]


На выходе имеем страницу с необходимым нам урлом.

Дальше, чтобы на остальном сайте ссылки были такие, какие нам нужны, мы и прописываем:
{$body|replace:“\»/shop/plenka/pishhevaja-plenka/\“»:“\»/pishhevaja-plenka\“»}

В переменной $body содержится скомпиленное тело страницы вместе с хлебными крошками. В нем просто подменяем адреса.

Вот такая логика, если ничего другое не помогает.

На Host.CMS хотел тоже самое сделать..
Авторизация