Bitrix - Билет №0 (для подготовки к экзамену битрикс)
Войти

Bitrix - Билет №0 (для подготовки к экзамену битрикс)

Задания для подготовки
Экзамен «№1 Интеграция дизайна и
настройка платформы»
по платформе «Bitrix Framework»

«Академия 1С-Битрикс», 2018 г.

Документ обновляется, актуальная версия доступна по ссылке

Версия 2.0.15, 20.02.2018

Материалы к заданиям доступны по ссылке

Для решения задания требуется установка «1С-Битрикс: Управление сайтом» редакции «Стандарт», решение «Корпоративный сайт производственной компании».

Общие условия для решения заданий:

  • При решении каждого задания должны соблюдаться правила, указанные в описании экзамена. Напомним, есть ряд важных правил (!), если при решении будет не учтено даже одно такое правило, то экзамен не будет пройден.
  • Шаблон сайта, шаблоны компонентов и другие ваши объекты - размещать в папке local.
  • Языковые файлы можно создавать только для ru.
  • Можно использовать как старое API так и новое D7.
  • Не забудьте про кеширование.

[ex1-1] Добавить раздел сайта: Партнерам.

  • Из главного меню удалить ссылку на раздел Контакты. Физически раздел не удалять, он должен остаться доступным, если набрать адрес в браузере напрямую.
  • Создать на сайте раздел Партнерам, добавить соответствующий пункт в верхнее меню, разместить его последним.
  • В созданном разделе:
    • Добавить страницу Как стать партнером, отразить в левом меню.
    • Индексную страницу раздела Партнерам назвать Условия сотрудничества, отразитьее в левом меню и поставить верхней.
    • Добавить подраздел Расписание мероприятий, также отразить его в левом меню,нижним пунктом. В созданном подразделе:
      • Добавить страницу Архив, отразить ее в левом меню.
      • Индексную страницу назвать Анонсы, отразить ее в левом меню и поставить верхней.

[ex1-2] Метаданные статичных страниц: раздел партнерам.

  • Указать уникальные значения свойств для всех страниц раздела Партнерам кроме страницы Как стать партнером:
    • Описание: Партнерам. Выгодное сотрудничество с лидером отрасли.
    • Ключевые слова: партнерство, выгода, сотрудничество.
  • Указать значения свойств для страницы Как стать партнером:
    • Описание: Партнерам. Как стать партнером лидера отрасли
    • Ключевые слова: стать партнером, лидер отрасли

[ex1-4] Создать шаблон сайта

Общие требования

  • Создать шаблон сайта на основе предоставленной HTML верстки, папка html в архиве с материалами.
  • В этом задании создать только общий шаблон сайта, без внедрения в него компонентов!
  • Предоставленную верстку разделить на header, footer и контентную частью, создать шаблон сайта, выполнить пункты задания.
  • Шаблон создается один и для главной и для внутренних страниц.
  • Задать ID шаблона: exam1, название шаблона: Экзамен N1
  • Созданный шаблон применить для отображения по умолчанию для всего сайта.

Решаемая задача

  • В языковые фразы вынести только одну фразу Контактная информация.

    Остальные фразы в шаблоне не выносить в языковые файлы, для экономии времени во время экзамена на решении однотипных задач. В следующих заданиях, в шаблонах компонентов, все фразы выносятся в языковые файлы – согласно требованиям экзамена.
  • Необходимо реализовать различное отображение элементов в шаблоне на главной и внутренних страницах. Верстка с разным отображением задана в файлах main.html и inner.html
    • На главной не отображается:
      • Цепочка навигации
      • Заголовок страницы

  • Реализовать различное отображение информации в шапке. Если сейчас время (на сервере) рабочее (с 9 до 18), то отображается телефон, если не рабочее – то email. Верстка с отображением email - в файле main_email.html

  • Реализовать защиту контента главной страницы
    • Демо-контент, расположенный на главной странице установленного решения – удалить.
    • Содержимое контентной части шаблона для главной страницы из верстки – разместить в header. Редактирование главной страницы сайта контент-менеджером - не предполагается.
    • Данный контент должен отображаться в шаблоне только при нахождении на главной страницы сайта.
    • Компоненты для отображения динамики в этой области – не внедрять.

  • [ex1-5] Другой шаблон: демо шаблон для раздела Компания

    Для раздела Услуги включить демо-шаблон Фиксированный

    [ex1-6] Внедрить меню сайта: левое и верхнее многоуровневое.

    Общие требования

    • Реализовать левое меню. В материалах предоставлен уже готовый шаблон для компонента меню components/menu/left, дорабатывать его не нужно.
    • Реализовать верхнее, многоуровневое меню.

    Решаемая задача

    • Левое меню настроить на отображение 1 уровня вложенности.
    • В разделе Продукция (/products/) левое меню должно строиться на основании разделов информационного блока Продукция.
    • Верхнее меню должно строится выпадающим, по вложенности до 3-го уровня. Пример выпадающего меню в верстке в пункте Каталог файла верстки main.html.  Шаблон верхнего меню должен поддерживать ограничение доступа o Cтраницы и разделы не доступные пользователю - не должны отображаться в меню. o Для проверки – закрыть для неавторизованных пользователей доступ к странице Миссия и стратегия (/company/mission.php).  Реализовать вывод текста для выпадающего меню. o Если пункт меню является «родительским» и имеет выпадающее меню, то выводить текст перед пунктами под-меню. o Администратор сайта, без редактирования исходного кода, должен иметь возможность установить этот текст. o Должна быть возможность для каждого пункта меню указать уникальный текст. o Верстка с отображением текста перед под-меню – в файле верстки main_text_menu.html o Для демонстрации решения задать текст для пункта Компания – текст для пункта Компания. [ex1-42] Верхнее меню сайта: поддержка стиля отображения пункта меню. Решаемая задача  Верхнее меню должно поддерживать управление цветом текста пунктов.  Администратор сайта, без редактирования исходного кода, должен иметь возможность установить цвет пункта меню, указав имя класса стиля.  Решение должно учитывать, что в будущем будут добавляться новые классы стиля в css файл, например .nav .menu .color-yellow{ color: #eeff0e; } которые должны поддерживаться без переделки шаблона компонента.  Пример меню с разным цветом пунктов – в файле верстки main_color_menu.html.  Для демонстрации решения задать красный цвет для пункта меню «Компания»). [ex1-7] Внедрить цепочку навигации  Внедрить в шаблон сайта компонент, реализующий цепочку навигации.  Убедиться, что цепочка навигации автоматически строится корректно для вложенных разделов. В цепочки должны присутствовать названия всех разделов, до текущей страницы.  Последний пункт в цепочке навигации, по шаблону, не кликабелен.  При нахождении на странице Анонсы по пути Главная->Партнерам->Расписание мероприятие->Анонсы должна получиться такая картинка [ex1-8] Внедрить меню: свой тип, нижнее меню  Создать новый тип меню - bottom.  Нижний блок с ссылками: Отзывы, Руководство, История - реализовать через компонент меню. Использовать созданный тип меню bottom. [ex1-9] Управление текстом в шаблоне: телефонный номер в footer Реализовать возможность для администратора сайта: редактировать номер телефона в нижней части шаблона сайта, не переходя в административный раздел и не редактируя исходный код файла footer.php [ex1-10] Шаблоны для контента статичной страницы: демоконтент inner.html Реализовать возможность выбора, с каким демо-контентом создавать новую страницу сайта: пустую или с контентом страницы inner.html. Шаблон создается «пассивный». [ex1-11] Управление текстом в шаблоне: блок Полезная информация.  Задание решить с помощью включаемых областей.  Реализовать возможность администратору сайта указывать текст в блоке Полезная информация без необходимости редактироваться исходный код.  Должна быть возможность указывать разный текст для разных разделов сайта.  Верстка, реализующая «каркас» блока, не должна быть в файле, который содержит редактируемый администратором текст. Это позволит минимизировать возможность «поломки» шаблона сайта.  Если для какого-либо раздела текст не должен выводиться, то и «каркас» с пустым содержимым не должен отображаться в шаблоне сайта.  Для демонстрации решения задать текст: o Для всех разделов сайта, кроме раздела Компания (/сompany/): Лучший выбор мебели в нашей компании! o Для раздела Компания (/сompany/): Надежный поставщик на все времена. [ex1-12] Ускорение работы с контентом: html заготовка с контента inner.html. Реализовать возможность – при редактировании станицы в визуальном редакторе размещать готовый блок html контента, указанный красной рамкой на изображении ниже. [ex1-13] Управление динамической информацией на сайте: отзывы. Общие требования  Реализовать хранение динамической информации, возможность администратору сайта ей управлять.  Для ускорения решения в материалах предоставлен xml файл для импорта информационного блока. Папка demo-content-iblock , файл rew.xml и папка rew_files. Решаемая задача  Импортировать информационный блок Отзывы из xml файла, файл доступен в материалах.  Должна быть задана автоматическая генерация символьного кода транслитом для новых элементов.  В списке элементов должны присутствовать только такие поля: ID, Активность, Начало активности, Название, Должность, Компания.  В фильтре должен быть доступен поиск по полю Должность.  Форма редактирования должна отображаться на четырех закладках: o На первой:  Поля: Активность, Начало активности, Название, Символьный код  Свойства: Должность, Компания. o На второй все остальные используемые поля и свойства. o Третья – стандартная закладка SEO. o Четвертая – стандартная закладка Реклама.  Изменение элементов должно фиксироваться для последующего анализа. [ex1-14] Раздел сайта с динамической информацией: отзывы. Общие требования  Реализовать вывод списка элементов и детальный просмотр элемента с помощью комплексного компонента. Решаемая задача  Создать раздел Отзывы (/rew/), добавить на него ссылку в главном меню.  Организовать отображение списка отзывов и детальный просмотр отзыва из информационного блока, созданного ранее.  Внедрить верстку для списка и детального просмотра, верстка предоставлена в материалах, файлы reviews-detail.html и reviews-list.html Данные инфоблока и отображение  В списке выводится: фото (картинка для анонса), имя-фамилия (название), дата отзыва (начало активности), короткий тест (описание для анонса), компания, должность.  На детальной странице выводится: фото (детальная картинка), полный тест отзыва (Детальное описание), имя-фамилия (название), дата отзывы (начало активности), компания, должность, документы.  Документы – это множественное свойство типа «файл», загружаются только pdf документы. Отображать оригинальное название файла, по клику на название – должен скачиваться файл. Если файлы не заданы у элемента инфоблока, то блок Документы не отображается.  При отсутствии изображения, и в списке и на детальном просмотре, должна выводится картинка – заглушка, файл no_photo.jpg из материалов. Добавить тестовый отзыв без фото для демонстрации решения. Технические требования  Настроить отображение постраничной навигации с любым типовым шаблоном, указать отображение по 2 отзыва на одной странице. Задать название категорий для постраничной навигации в соответствии с отображаемым контентом.  Реализовать поддержку Эрмитажа – на странице списка отзывов должно быть доступно редактирование элементов над сайтом.  Настроить работу комплексного компонента в режиме ЧПУ по символьным кодам. Учесть это и указать соответствующие настройки информационного блока. Вновь добавляемые отзывы в информационный блок должны корректно открываться в публичной части.  Задать метаданные для страницы детального просмотра по шаблонам: o Заголовок окна браузера: Отзыв – [Имя Фамилия] o Заголовок страницы (H1): Отзыв – [Имя Фамилия] – [Компания] o Ключевые слова: лучшие, отзывы, [Компания] o Описание: [Текст анонса] В скобках […] указано поле или свойство объекта для подстановки в шаблон. [ex1-15] Вывод динамических элементов в шаблоне: отзывы. Общие требования  Реализовать вывод 2х последних отзывов в шаблоне сайта с помощью соответствующего компонента. Решаемая задача  Отзывы – это элементы информационного блока, созданного ранее.  Очередность отзывов определится полем Начало активности, должны отображаться 2 самых «новых» отзыва.  Если дата отзывов одинаковая, то они должны сортироваться по Названию.  С имени-фамилии реализовать ссылку на детальный просмотр отзыва, который был реализован ранее.  Показывать первые 150 символов текста отзыва из анонса.  Реализовать уменьшение картинки – фотографии. Уменьшать «на лету», в шаблоне компонента с помощью API Bitrix Framework в шаблоне компонента (допускается это сделать это в файле template.php). За основу взять изображения для анонса, размер изображения определить исходя из верстки.  При отсутствии изображения должна выводиться картинка – заглушка, файл no_photo_left_block.jpg из материалов. [ex1-16] Поиск динамической информации на сайте: отзывы. Общие требования  Реализовать настройки, позволяющие осуществлять поиск информации в публичной части сайта.  Страница с компонентом, реализующий поиск - уже реализована в типовом решении, раздел /search/  В главное меню добавить ссылку на раздел /search/, пункт назвать Поиск. Решаемая задача  Отзывы o Отзывы должны находиться поиском по Названию, Анонсу и Детальному описанию. А так же по значению свойств: Должность, Компания. o Переход с найденных отзывов должен корректно осуществляться на детальный просмотр отзывы.  Новости o Элементы информационного блока Новости не должны находиться через поиск по сайту. [ex1-18] Форма обратной связи и почтовый шаблон: Новая форма с сайта.  Создать страницу Обратная связь, в разделе Компания.  На созданной странице расположить типовой компонент, реализующий форму обратной связи.  Создать новый шаблон для типа почтового сообщения FEEDBACK_FORM: o Тема: Новая форма с сайта [Название сайта] o Текст: Форму заполнил [Имя] - [Email]. Сообщение: [Сообщение] o Получатель и отправитель: E-Mail адрес по умолчанию  Настроить размещенный компонент на использование созданного почтового шаблона. [ex1-19] Создание пользователя с ограниченным доступом: редактор отзывов.  Создать пользователя с логином miniadmin и паролем 987654  Созданному пользователю должно быть доступно: o Просмотр публичных станиц сайта. o Управление разделом Отзывы в публичной части сайта: создавать в нем страницы и разделы, редактировать текущие. o Управление содержимым информационного блока Отзывы через административный раздел сайта.  Других возможностей по администрированию сайта, прав на редактирование других разделов и страниц сайта, других информационных блоков - у пользователя не должно быть! [ex1-39] Создание пользователя с ограниченным доступом: администратор опросов.  Создать пользователя с логином miniadmin и паролем 987654.  Создать раздел сайта Опросы (/ask/), добавить ссылку в верхнее меню.  Созданному пользователю должно быть доступно: o Просмотр публичных станиц сайта. o Создание и редактирование страниц и разделов в разделе сайта Опросы. o Управление опросами в административном разделе сайта. o Других возможностей по администрированию сайта, прав на редактирование других разделов и страниц сайта - у пользователя не должно быть!  Для проверки решения, под пользователем miniadmin: o В административном разделе создать тестовые данные: группу опросов, опрос, и вопрос в нем. o Создать в разделе сайта Опросы страницу Актуальный опрос, разместить ссылку на нее в левом меню. o На созданной странице разместить комплексный компонент Текущий опрос. o Если все сделано верно – то на станице появится созданный опрос. [ex1-20] Реализовать авторизацию: типовые сценарии, соц.сети и capcha Общие требования  Реализовать авторизацию пользователей на сайте.  В материалах предоставляется готовый шаблон компонента авторизации components/system.auth.form/demo, потребуется его доработка.  В демо установке уже существует раздел /login/, для реализации типовых сценариев авторизации пользователя. Решаемая задача  Создать страницу для просмотра и редактирования профиля пользователя, использовав соответствующий компонент. Адрес страницы задать /login/user.php  Внедрить компонент авторизации в шаблон сайта, использовать шаблон компонента из материалов.  Добавить в шаблон компонента отображение информации для авторизованного пользователя, верстка на странице main_auth.html  Реализовать 5 типовых сценариев o Сценарии:  авторизация;  выход;  переход на страницу с формой регистрации;  переход на страницу с формой восстановления пароля;  переход к профилю (/login/user.php). o Параметры для реализации сценариев: регистрация register=yes, восстановления пароля: forgot_password=yes, выход: logout=yes o Ссылки внедрённого компонента авторизации system.auth. должны работать верно по всем сценариям.  В шаблоне компонента авторизации добавить поддержку авторизации через соц-сети. Это штатный функционал, поддерживаемый типовым шаблоном компонента.  В шаблоне компонента авторизации добавить поддержку capcha. o capcha в компоненте авторизации – это штатный механизм, поддерживаемый типовым шаблоном компонента; o для простоты проверки указать 1 неправильный ввод пароля для включения capcha, для группы Все пользователи (в том числе неавторизованные). [ex1-25] Создание свойства страницы: управление цветом шапки левого меню. Общие требования  Задание решается после внедрение шаблона сайта и внедрения меню. Решаемая задача  В файл стилей шаблона сайта, в конец, добавить описание двух стилей .side-block .red { background: linear-gradient(#fda3a3, #ff0000); } .side-block .green { background: linear-gradient(#e2ffe7, #00ff43); }  Реализовать возможность администратору сайта управлять цветом шапки левого меню, установив свойство страницы равное red или green.  Администратор должен устанавливать значение через административный интерфейс, не прибегая к редактированию кода.  Задать значение по умолчанию для всего сайта равным red .  Задать значение green для страницы История компании (/company/history.php). [ex1-61] Изменение почтового шаблона: информация о пользователе.  Создать новый шаблон для типа почтового сообщения, отсылаемого при изменении данных пользователя.  Шаблон, создаваемый системой по умолчанию, не удалять, но системой он использоваться не должен. Шаблон: o Тема: Информация о вас на сайте #SITE_NAME# обновлена o Информация о вас на сайте #SITE_NAME# обновлена o Текст: Ваш логин [логин] Адрес сайта: #SERVER_NAME# ------------------------------------------ Ваш статус: #STATUS# Информация о вас: Логин: #LOGIN#, Имя: #NAME#, Фамилия: #LAST_NAME# Вы можете изменить пароль, перейдя по следующей ссылке: http://#SERVER_NAME#/auth/index.php?change_password=yes&lang=ru&USER_CHECKWO RD=#CHECKWORD#&USER_LOGIN=#URL_LOGIN# ------- Сообщение сгенерировано автоматически. o Получатель – email пользователя, отправитель: email адрес по умолчанию  Для проверки – необходимо отредактировать данные пользователя, установив галочку «Оповестить пользователя»  Почтовый сервер складывает письма в папку /home/bitrix/mail, можно проверить решение.
      Теги:
      php