Добавление логотипа с возможностью его редактирования в Edit-in-Place (XSLT) — различия между версиями
Stexe (обсуждение | вклад) (Новая страница: « category:Вопросы и уроки разработки сайтов на UMI.CMS '''Задача:''' Добавить логотип, который буд…») |
Stexe (обсуждение | вклад) |
||
(не показаны 2 промежуточные версии этого же участника) | |||
Строка 6: | Строка 6: | ||
В административной панели переходим на редактирование главной страницы (отмечена жирным шрифтом), нажимаем на кнопку "Показать расширенные поля" и далее на "Редактировать тип данных". В типе данных находим поле с типом "Изображение", запоминаем идентификатор какого-либо поля, например 'header_pic' и его название. Снова переходим на редактирование главной страницы и ищем поле с названием, которые мы выбрали ранее. Выбираем изображение для этого поля.<br/><br/> | В административной панели переходим на редактирование главной страницы (отмечена жирным шрифтом), нажимаем на кнопку "Показать расширенные поля" и далее на "Редактировать тип данных". В типе данных находим поле с типом "Изображение", запоминаем идентификатор какого-либо поля, например 'header_pic' и его название. Снова переходим на редактирование главной страницы и ищем поле с названием, которые мы выбрали ранее. Выбираем изображение для этого поля.<br/><br/> | ||
− | Заходим в директорию по FTP, в которой находятся файлы системы. Если присутствует | + | Заходим в директорию по FTP, в которой находятся файлы системы. Если присутствует директория templates, то нужно открыть папку /templates/имя_шаблона/xslt. Если нет, то директорию /xsltTpls. В этой папке нужно найти файл шаблонов, в котором присутствуют теги <body></body> (по умолчанию layouts/default.xsl). Между тегами <body> и </body> в то место, где нужно вывести логотип, необходимо добавить следующий код: |
<source lang="xml"> | <source lang="xml"> | ||
<xsl:variable name="logotype" select="document('upage://35')/udata//property[@name='header_pic']/value"/> | <xsl:variable name="logotype" select="document('upage://35')/udata//property[@name='header_pic']/value"/> | ||
Строка 13: | Строка 13: | ||
В первой строке кода мы присваиваем переменной 'logotype' путь до изображения, которое указано в поле для главной страницы. '''35''' - это id главной страницы (id страницы можно узнать открыв ее на редактирование в административной панели, в адресной строке браузера содержится id текущей страницы).<br/><br/> | В первой строке кода мы присваиваем переменной 'logotype' путь до изображения, которое указано в поле для главной страницы. '''35''' - это id главной страницы (id страницы можно узнать открыв ее на редактирование в административной панели, в адресной строке браузера содержится id текущей страницы).<br/><br/> | ||
− | Во второй строке мы непосредственно выводим сам логотип. Для атрибута umi:element-id="35" нужно указать id страницы, | + | Во второй строке мы непосредственно выводим сам логотип. Для атрибута umi:element-id="35" нужно указать id страницы, в которой содержится поле, значение которого нужно изменять. Для атрибута umi:field-name="header_pic" - идентификатор поля, значение которого нужно изменять. |
Текущая версия на 21:18, 30 июня 2013
Задача: Добавить логотип, который будет отображаться на всех страницах сайта, и сделать его редактируемым с помощью Edit-in-Place.
Реализация:
В административной панели переходим на редактирование главной страницы (отмечена жирным шрифтом), нажимаем на кнопку "Показать расширенные поля" и далее на "Редактировать тип данных". В типе данных находим поле с типом "Изображение", запоминаем идентификатор какого-либо поля, например 'header_pic' и его название. Снова переходим на редактирование главной страницы и ищем поле с названием, которые мы выбрали ранее. Выбираем изображение для этого поля.
Заходим в директорию по FTP, в которой находятся файлы системы. Если присутствует директория templates, то нужно открыть папку /templates/имя_шаблона/xslt. Если нет, то директорию /xsltTpls. В этой папке нужно найти файл шаблонов, в котором присутствуют теги <body></body> (по умолчанию layouts/default.xsl). Между тегами <body> и </body> в то место, где нужно вывести логотип, необходимо добавить следующий код:
<xsl:variable name="logotype" select="document('upage://35')/udata//property[@name='header_pic']/value"/>
<img src="{$logotype}" umi:element-id="35" umi:field-name="header_pic"/>
В первой строке кода мы присваиваем переменной 'logotype' путь до изображения, которое указано в поле для главной страницы. 35 - это id главной страницы (id страницы можно узнать открыв ее на редактирование в административной панели, в адресной строке браузера содержится id текущей страницы).
Во второй строке мы непосредственно выводим сам логотип. Для атрибута umi:element-id="35" нужно указать id страницы, в которой содержится поле, значение которого нужно изменять. Для атрибута umi:field-name="header_pic" - идентификатор поля, значение которого нужно изменять.