Страницы часто задаваемых вопросов? Функция, о которой просят большинство моих клиентов, похоже, всем нравится.
Без сомнения, хорошо адаптированная страница часто задаваемых вопросов имеет большое значение и потенциально может уменьшить объем поддержки клиентов, необходимой для вашего веб-сайта, и в целом сделать ваших клиентов счастливыми.
Лично я нахожу очень интересным, что большинство разработчиков тем Shopify практически не тратят время на разработку динамических разделов часто задаваемых вопросов для шаблонов. Итак, как разработчик, я начал создавать свои собственные страницы часто задаваемых вопросов по старинке с помощью HTML и CSS.
Но давайте смотреть правде в глаза, никто не любит выполнять утомительную и повторяющуюся работу. Я имею в виду, что вы можете потратить это время на что-то еще, кроме этого.
Именно поэтому я создал этот динамический шаблон страницы часто задаваемых вопросов, который позволяет пользователю/покупателю загружать свои вопросы прямо из панели настройки Shopify.
Когда я говорю хорошо сделанная страница часто задаваемых вопросов, я имею в виду классический аккордеонный дизайн, который всем нравится, вы знаете какой :)
Итак, давайте погрузимся прямо в него!
— для этого руководства требуются базовые знания HTML, CSS и Liquid (но не волнуйтесь, я буду упрощать)
Обратите внимание, я использую бесплатную тему Narrative, которую предоставляет Shopify. Это, скорее всего, будет работать и с другими темами. Если это не так, дайте мне знать, и я сделаю все возможное, чтобы помочь вам :)
Шаг 1 — Загрузить файлы
В этом упражнении мы будем использовать функцию jQuery Accordion.
📥 Загрузите ZIP-файлы необходимых ресурсов или (альтернативная ссылка здесь)
Перейдите в Интернет-магазин → Темы → Изменить код
В разделе Активы скопируйте содержимое ZIP-файла.
Шаг 2 — Создайте раздел часто задаваемых вопросов
Перейдите в «Интернет-магазин» -> «Темы» -> «Редактировать код»
На вкладке «Разделы» создайте новый файл — назовем его просто: faq.liquid
{% for block in section.blocks %} {% if block.type == ‘header’ %} <h3 class=”faq-header”>{{block.settings.header}}</h3> {% else %} <div class=”accordion” id={{id}}>{{block.settings.question}}<span></span></div> <div class=”container”> <div class=”content”> <div>{{block.settings.answer}}</div> </div> </div> {% endif %} {% endfor %} {% schema %} { “name”: “FAQ”, “class”: “index-section index-section — featured-sider”, “settings”: [ ], “blocks”: [ { “type”: “slide”, “name”: “Question”, “settings”: [ { “type”: “header”, “content”: “Question Item” }, { “type”: “number”, “id”: “id”, “label”: “id — integer” }, { “type”: “text”, “id”: “question”, “label”: “Question — text” }, { “type”: “html”, “id”: “answer”, “label”: “Answer — html” } ] }, { “type”: “header”, “name”: “Header”, “settings”: [ { “type”: “header”, “content”: “Header” }, { “type”: “text”, “id”: “header”, “label”: “Header” } ] } ] } {% endschema %}
Шаг 3 — Создайте шаблон страницы часто задаваемых вопросов
Перейдите в «Интернет-магазин» -> «Темы» -> «Редактировать код»
На вкладке «Шаблоны» создайте новый файл — назовите его: page.faq.liquid
В этом шаблоне мы хотим рендерить все, что мы хотим отобразить на странице часто задаваемых вопросов.
Для простоты мы будем отображать только раздел часто задаваемых вопросов:
<div class=”page-width”> <header class=”section-header text-center”> <h1 class=”section-header__title h2">{{ page.title }}</h1> </header> <div class=”breadcrumbs”> {% render ‘breadcrumbs’ %} </div> <div class=”grid”> <div class=”grid__item medium-up — four-fifths medium-up — push-one-tenth”> <div class=”rte”> {{ page.content }} <div class=”faqpage”> {% section “faq” %} </div> </div> </div> </div> <script src=”{{ ‘jquery_3.4.1.js’ | asset_url }}” type=”text/javascript”></script> <script type=”text/javascript” src=”{{ ‘jquery_accordion.js’ | asset_url }}”></script> <script type=”text/javascript”> (function($){ $(document).ready(function() { $(‘.accordion’).accordion({ defaultOpen: ‘1’, cookieName: ‘accordion_nav’ }); }); })(jQuery); </script>
Шаг 4 — Стиль аккордиона
Теперь, когда у нас есть механика, давайте добавим несколько стилей.
— стили ниже приведены только в качестве рекомендаций, пожалуйста, не стесняйтесь изменять их в соответствии со стилями вашего веб-сайта
Перейдите в Интернет-магазин -> Темы -> Изменить код
Найдите файл theme.scss и добавьте указанный ниже код в самый низ файла.
.accordion { margin: 0; padding:10px; border-top:#f0f0f0 1px solid; background: #e8e8e8; text-decoration:none; color: $color-body-text; font-size:1em; position:relative; } .accordion-open { background:$settings-color-primary; color: $color-body-text; } .accordion-open span { display:block; position:absolute; right:3px; top:25%; padding:10px; } .accordion-open span { background:url(‘{{ ‘minus.png’ | asset_url }}’) center center no-repeat; } .accordion-close span { display:block; position:absolute; right:3px; top:25%; background:url(‘{{ ‘plus.png’ | asset_url }}’) center center no-repeat; padding:10px; } .faq-header { margin:3rem 0 1rem 0!important; } .faqpage div.container { padding:0; margin:0; } .faqpage div.container { max-width:100%; padding:5px 0; } .faqpage div.content { background:#f4f4f4; margin: 0; padding:10px; font-size:.9em; line-height:1.5em; } .faqpage div.content ul { padding:0; margin:0; padding:3px; } .faqpage div.content p { padding:0; margin:3px 0 10px; padding:3px; } .faqpage div.content ul li { list-style-position:inside; line-height:25px;
✨ Вуаля! теперь у вас есть динамическая страница часто задаваемых вопросов для вашего магазина Shopify.
Следующий шаг — создать новую страницу и применить к ней шаблон часто задаваемых вопросов, затем, если вы перейдете к настройке этой страницы, вы сможете создать новые разделы часто задаваемых вопросов для своей страницы часто задаваемых вопросов, как показано ниже.
Я надеюсь, вам понравится это руководство, дайте мне знать, как оно у вас получается!