Google sitemap — различия между версиями
Cmac (обсуждение | вклад) |
Danil (обсуждение | вклад) (→В UMI.CMS реализован протокол Google sitemap) |
||
Строка 5: | Строка 5: | ||
Поддержка протокола может быть добавлена в UMI.CMS начиная с версии 2.5.3 | Поддержка протокола может быть добавлена в UMI.CMS начиная с версии 2.5.3 | ||
− | Протокол sitemap реализован на основе протокола [[ | + | Протокол sitemap реализован на основе протокола [[UMap]] |
Необходимо отредактировать единственный для версии 2.5.3 файл '''./umaps/sitemap.xml''' (совпадает с названием протокола по чистой случайности). | Необходимо отредактировать единственный для версии 2.5.3 файл '''./umaps/sitemap.xml''' (совпадает с названием протокола по чистой случайности). | ||
Строка 11: | Строка 11: | ||
Протокол umap имеет более высокий приоритет чем шаблонизатор. | Протокол umap имеет более высокий приоритет чем шаблонизатор. | ||
− | Это значит, что если в структуре сайта есть страница с именем '''google-sitemap''', то она будет проигнорирована, т.к. в первую очередь обрабатываются правила протокола ''' | + | Это значит, что если в структуре сайта есть страница с именем '''google-sitemap''', то она будет проигнорирована, т.к. в первую очередь обрабатываются правила протокола '''UMap''' |
сгенерируется xml в результате вызова '''udata://content/sitemap/''' | сгенерируется xml в результате вызова '''udata://content/sitemap/''' | ||
она будет обработана в соответствии с правилами файла '''./xsltTpls/google-sitemap.xsl''' и результат будет отдан системой с заголовком xml в сответствии с инструкцией '''serialize type="xml"''' | она будет обработана в соответствии с правилами файла '''./xsltTpls/google-sitemap.xsl''' и результат будет отдан системой с заголовком xml в сответствии с инструкцией '''serialize type="xml"''' | ||
Строка 21: | Строка 21: | ||
<param name="cache" value="10" /> | <param name="cache" value="10" /> | ||
<generate src="udata://content/sitemap/" /> | <generate src="udata://content/sitemap/" /> | ||
− | <transform src="./xsltTpls/google-sitemap.xsl"> | + | <transform src="./xsltTpls/sys-tpls/google-sitemap.xsl"> |
<param name="domain" value="{_http_host}" /> | <param name="domain" value="{_http_host}" /> | ||
</transform> | </transform> | ||
Строка 29: | Строка 29: | ||
</source> | </source> | ||
− | Это правило использует файл находящийся в папке относительно корня сайта '''./xsltTpls/google-sitemap.xsl''' | + | Это правило использует файл находящийся в папке относительно корня сайта '''./xsltTpls/sys-tpls/google-sitemap.xsl''' |
<source lang="xml"> | <source lang="xml"> | ||
<?xml version="1.0" encoding="UTF-8"?> | <?xml version="1.0" encoding="UTF-8"?> | ||
Строка 71: | Строка 71: | ||
Чтобы добавить поддержку Google sitemap в уже установленную UMI.CMS необходимо скопировать | Чтобы добавить поддержку Google sitemap в уже установленную UMI.CMS необходимо скопировать | ||
− | + | файлы из архива http://www.umi-cms.ru/files/googlesitemap.zip, соблюдая структуру папок в архиве. | |
проверка работоспособности | проверка работоспособности | ||
− | http:// | + | http://адрес_сайта/google-sitemap |
− | XSD схема стандарта Google sitemap лежит в папке '''./xsl/sitemap.xsd''' | + | XSD схема стандарта Google sitemap лежит в папке '''./xsl/xsd/sitemap.xsd''' |
[[Категория:Вопросы и уроки разработки сайтов на UMI.CMS]][[Категория:Сторонние сервисы и программы]] | [[Категория:Вопросы и уроки разработки сайтов на UMI.CMS]][[Категория:Сторонние сервисы и программы]] |
Версия 12:15, 9 августа 2010
В UMI.CMS реализован протокол Google sitemap
Использование файлов Sitemap инструкция для веб-мастеров http://www.google.com/support/webmasters/bin/topic.py?topic=8476
Подробнее о протоколе https://www.google.com/webmasters/tools/docs/ru/protocol.html#sitemapXMLExample
Поддержка протокола может быть добавлена в UMI.CMS начиная с версии 2.5.3 Протокол sitemap реализован на основе протокола UMap
Необходимо отредактировать единственный для версии 2.5.3 файл ./umaps/sitemap.xml (совпадает с названием протокола по чистой случайности).
Протокол umap имеет более высокий приоритет чем шаблонизатор.
Это значит, что если в структуре сайта есть страница с именем google-sitemap, то она будет проигнорирована, т.к. в первую очередь обрабатываются правила протокола UMap
сгенерируется xml в результате вызова udata://content/sitemap/
она будет обработана в соответствии с правилами файла ./xsltTpls/google-sitemap.xsl и результат будет отдан системой с заголовком xml в сответствии с инструкцией serialize type="xml"
<?xml version="1.0" encoding="utf-8"?>
<sitemap>
<match pattern="^google-sitemap$">
<param name="cache" value="10" />
<generate src="udata://content/sitemap/" />
<transform src="./xsltTpls/sys-tpls/google-sitemap.xsl">
<param name="domain" value="{_http_host}" />
</transform>
<serialize type="xml" />
</match>
</sitemap>
Это правило использует файл находящийся в папке относительно корня сайта ./xsltTpls/sys-tpls/google-sitemap.xsl
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:php="http://php.net/xsl"
xsl:extension-element-prefixes="php"
exclude-result-prefixes="php">
<xsl:output encoding="utf-8" method="xml" indent="yes"/>
<xsl:param name="domain" />
<xsl:template match="/">
<urlset xmlns="http://www.google.com/schemas/sitemap/0.84"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.google.com/schemas/sitemap/0.84
http://www.google.com/schemas/sitemap/0.84/sitemap.xsd">
<xsl:apply-templates select="//items"/>
</urlset>
</xsl:template>
<xsl:template match="items">
<xsl:apply-templates select="item"/>
</xsl:template>
<xsl:template match="item">
<url>
<loc>
<xsl:value-of select="concat('http://', $domain, @link)" />
</loc>
</url>
</xsl:template>
</xsl:stylesheet>
Чтобы добавить поддержку Google sitemap в уже установленную UMI.CMS необходимо скопировать
файлы из архива http://www.umi-cms.ru/files/googlesitemap.zip, соблюдая структуру папок в архиве.
проверка работоспособности http://адрес_сайта/google-sitemap
XSD схема стандарта Google sitemap лежит в папке ./xsl/xsd/sitemap.xsd