Тестовое задание на позицию full-stack Wordpress developer | Masters-Soft

Тестовое задание на позицию full-stack WordPress developer

Тестовое задание состоит из 2 частей. 

Часть 1 – проверка верстки, часть 2 – проверка знаний WordPress. 

Обе задачи не сложные и выполняются в среднем за 3 часа.

Часть 1

Сверстать 2 баннера по макетам:

https://www.figma.com/file/IQXwrsbdplqE98TeofVqjH/test_banners?node-id=0%3A1

Обязательно:

– наличие исходников *.scss в работе (как минимум один файл).

– использование BEM (стиль Two Dashes).

Примечания:

– работы с применением  inline CSS-стилей в HTML не рассматриваются.

– в работе должно быть 2 адаптивных баннера.

– текст Advertising также является частью макета.

– код внутри index.html не должен быть minified.

Часть 2

Скачайте тему test-theme для WordPress

https://drive.google.com/open?id=1UAHh8hMHDuW2KTbSORBgZUyfNbxFgUUF

Примечания:

НЕ нужно Часть 1 (баннеры) выполнять в теме блога Часть 2. Часть 1 выполняется отдельно.

– Использование плагинов не допускается.

– Минимализм кода. Строгое следование ТЗ.

– Задания реализовывать в шаблонах темы test-theme.

– Версия WordPress: 5 и выше.

– Регистрировать дополнительные sidebar-ы НЕ нужно (никакие). Код вывода писать в темплейте.

– Регистрировать дополнительные Post Type в коде НЕ нужно (никакие).

– Регистрировать дополнительные таксономии в коде НЕ нужно (никакие). Для тестирования таксономий (во время выполнения ТЗ) Вы можете у себя локально использовать, например, плагин Custom Post Type UI. В Задании 4 имеется в виду любые таксономии, а не какая-либо конкретная таксономия, которую создаете Вы.

Задание 1. Правильно подключите в теме WordPress следующие библиотеки:

– Bootstrap CSS в шапке блога

– Ionicons CSS в шапке блога, с зависимостью от Bootstrap CSS

– jQuery в шапке блога

– Bootstrap JavaScript в футере блога, с зависимостью от jQuery

– в каждое подключение включите версию подключаемой библиотеки

В качестве источников (для Задания 1) используйте CDN:

– Bootstrap: https://www.bootstrapcdn.com

– jQuery: https://code.jquery.com/

– Ionicons: https://ionicons.com/v2/#cdn

Задание 2. На странице поста выведите:

– заголовок поста

– содержимое поста

– навигацию по постам (предыдущий/следующий) из той же категории, к которой относится текущий пост

– sidebar

– в sidebar ссылки на последние три опубликованных поста из той же категории, к которой относится текущий пост, исключив из результатов текущий пост

Задание 3. Создайте шорткод [download-file]:

– шорткод должен выводить ссылку <a href=”{url}” title=”{title}”>{title}</a>

– {title} и {url} должны задаваться в параметрах шорткода

– если {title} не задан, то выводить текст по умолчанию – Download File

– символы < > & ” ‘ в значении атрибута title нужно экранировать в HTML-сущности

– если {url} не задан, то ничего не выводить

– шорткод должен работать только на статических страницах (pages)

Задание 4. На архивных страницах, если это таксономия (но не категория и не теги) и в ней есть хотя бы один пост, то выведете заголовок страницы и описание категории таксономии в следующем формате:

<h1>This is Category “{название текущей категории таксономии}” from “{название таксономии}>” Taxonomy</h1>

<p>{описание текущей категории таксономии}</p>

(текст в фигурных скобках нужно заменить на соответствующие значения)

Заголовок и описание нужно разместить перед выводом Постов.

Под названием таксономии подразумевается ее Singular Label, а не slug/name.

Под описанием подразумевается description для текущей категории таксономии.

Задание 5. Используя файлы темы, сделайте так, чтобы при запросе определенных страниц в браузере, без редиректов, отображалась страница с 404 ошибкой. Следующие страницы должны отдавать заголовок 404 Not Found:

  • страницы Авторов
  • страницы Категорий
  • страницы Тегов
  • страницы Архивов по Датам
  • страница категории в таксономии со слагом ‘country’ (не post_type)

В каком формате передавать готовую работу?

Часть 1

Архив с именем test_task_{your_last_name}.rar, включающий:

  1. исходные файлы (например, scss)
  2. скомпилированные файлы (например, html, css) 

Внимание!

Архив НЕ ДОЛЖЕН содержать папку node_modules!

Часть 2

Архив с именем test_theme_{your_last_name}.rar, включающий тему test-theme с внесенными правками по ТЗ.

Архив НЕ ДОЛЖЕН содержать дистрибутив WP!