Когда мы впервые определили необходимость изменений, задача казалась простой: «Изменить верхний блок и сделать призыв к действию более эффективным». На первый взгляд, это может показаться быстрым решением, но вскоре мы поняли, что эта небольшая задача выявила гораздо более крупные базовые проблемы со структурой и дизайном сайта. Проблема была не только в одном блоке; вся архитектура сайта нуждалась в капитальном ремонте.
Наш веб-сайт создавался с течением времени, с добавлением разных страниц с использованием различных дизайнов и макетов, без какой-либо объединяющей темы или шаблона. Каждая страница была уникальна по своему дизайну, что могло показаться креативным, но привело к значительной проблеме: непоследовательности. Если бы мы пошли дальше и сделали новый дизайн только для верхнего блока, оставив остальную часть сайта такой, какой она была, это означало бы ручное обновление этого блока на более чем 700 страницах и постах. Хуже того, этот ручной процесс пришлось бы повторять каждый раз, когда мы хотели бы внести будущие изменения. Представьте себе неэффективность необходимости прочесывать сотни страниц, гарантируя, что на каждой из них есть последние обновления. Быстро стало ясно, что продолжать работать со старым сайтом не будет устойчивым.
Помимо логистики обновления каждой страницы, нам пришлось учитывать общий пользовательский опыт. Сегодня пользователи ожидают бесшовного, связного опыта при посещении веб-сайта. Если они прокручивают страницу и видят, что дизайн непоследователен — каждый блок использует разные стили — это создает разрозненное и непрофессиональное впечатление. Еще хуже, когда пользователь переходит с одной страницы на другую и замечает, что макет и дизайн совершенно разные, это усиливает ощущение беспорядка.
Несоответствие распространялось не только на макет. Многие изображения на сайте были устаревшими, плохо оформленными или даже неправильно сгенерированными нейронными сетями. Эти изображения не соответствовали современным стандартам дизайна, и их замена была еще одной сложной задачей. Использование плохих изображений плохо отражалось на общем качестве сайта, оставляя у пользователей негативное впечатление о предлагаемом нами продукте или услуге.
Не было простого способа комплексно обновить сайт с помощью инструмента вроде Elementor. Каждая страница и блок содержали свои собственные встроенные стили, что означало, что изменения нельзя было вносить глобально. Если бы мы хотели обновить стиль сайта, нам пришлось бы пройтись по каждой странице и вручную обновить каждый блок, что было бы долго и неэффективно. Учитывая это, стало очевидно, что единственным решением было создать новый сайт с нуля. Это позволило бы нам перенести весь контент, сохранив те же URL-адреса, но с новым, последовательным и легко обновляемым дизайном.
Elementor — один из самых популярных конструкторов страниц для WordPress. На первый взгляд, это отличный инструмент, позволяющий быстро и легко создавать страницы. Однако после интенсивной работы с ним мы столкнулись с несколькими ограничениями, которые заставили нас отказаться от Elementor и выбрать создание сайта на заказ.
Ограничения и проблемы Elementor:
контейнеры в других элементы, каждый со своим собственным набором стилей. Это приводит к раздутой структуре, которая негативно влияет на скорость загрузки, производительность страницы и, в конечном счете, на рейтинг SEO веб-сайта. Когда мы проводили тесты скорости, результаты были постоянно плохими, и в этом в основном виноват тяжелый код, сгенерированный Elementor.
Учитывая все эти проблемы, стало ясно, что нам нужно более надежное решение. Мы приняли решение создать новый, независимый веб-сайт без Elementor, выбрав более устойчивый и гибкий подход.
Создание нового сайта с нуля дало нам возможность создать чистый, оптимизированный процесс создания страниц. В новой системе создание страницы простое:
Этот процесс прост, но гибок. Вместо того, чтобы полагаться на сложную блочную систему Elementor, редактор контента в WordPress гораздо чище, что позволяет быстро обновлять и легко настраивать. Ниже редактора находятся настройки для Advanced Custom Fields (ACF), которые уже настроены для поддержания согласованности на всем сайте.
ACF позволяет нам создавать гибкие разделы контента с такими блоками, как Контент 1…Контент 15 , где вы можете легко задать заголовок, текст, изображение и метки кнопок для каждого раздела страницы. Эти блоки автоматически чередуют расположение изображений и текста, гарантируя, что макет останется визуально привлекательным без необходимости ручной корректировки.
Для изображений мы внедрили систему сопоставления цветов, которая автоматически применяет градиент к основным цветам сайта. Это гарантирует, что все изображения будут соответствовать общей эстетике. Для логотипов или скриншотов, где цвета должны оставаться нетронутыми, есть опция «сохранить цвета», которая переопределяет градиент.
Эта система упрощает управление контентом, сохраняя единообразие дизайна на всех страницах.
Создание публикаций на новом сайте осуществляется по той же упрощенной схеме, что и создание страниц, но с несколькими ключевыми отличиями:
Шаблон для всех сообщений находится в файле template-parts/content/content-single.php , который управляет структурой и макетом каждого сообщения в блоге. Этот последовательный шаблон позволяет легко обновлять и гарантирует, что все сообщения соответствуют одним и тем же принципам дизайна.
ACF стал неотъемлемой частью разработки нашего нового веб-сайта. Он позволяет нам создавать пользовательские поля, которыми можно легко управлять через панель администратора WordPress. Такие поля, как content_1, упоминаются в коде PHP, что позволяет нам динамически подтягивать правильный контент для каждой страницы и поста.
Такая гибкость имеет решающее значение для обеспечения возможности эффективного управления сайтом и его обновления, а также предоставления возможностей для настройки при необходимости.
Одним из самых значительных улучшений, которые мы сделали с новым сайтом, стало внедрение A/B-тестирования. A/B-тестирование позволяет нам сравнивать две версии сайта, чтобы увидеть, какая из них лучше работает с пользователями. Это может включать тестирование различных цветов, форм кнопок, фонов или даже макетов.
Мы реализовали эту функциональность с помощью GET-параметров в URL. Например, можно создать две одинаковые рекламные кампании, но с разными URL:
https://www.conveythis.com/?param=1
https://www.conveythis.com/?param=2
Когда пользователи нажимают на эти ссылки, параметр сохраняется в файле cookie. В зависимости от значения параметра сайт будет показывать разные версии страницы, например, разные цвета кнопок или фоновые изображения. Это позволяет нам собирать ценные данные о предпочтениях и поведении пользователей.
Все события регистрируются в.csv
файле, а также в базе данных MySQL, что позволяет нам анализировать данные и принимать обоснованные решения по улучшению сайта.
Одним из ключевых применений файла functions.php было создание пользовательских типов записей и таксономий, что позволило нам более эффективно организовывать контент. Вместо того чтобы полагаться исключительно на структуру WordPress по умолчанию (страницы и записи), мы ввели пользовательские типы для определенного контента, такого как тематические исследования, отзывы или характеристики продукта. Это не только позволило лучше организовать наш контент, но и улучшило пользовательский опыт, упростив навигацию и поиск релевантной информации.
Например, чтобы создать пользовательский тип записи для тематических исследований, мы добавили следующий код в functions.php :
функция create_case_study_post_type() {
register_post_type( 'кейс_исследования',
множество(
'метки' =>
множество(
'имя' => __( 'Исследования случаев' ),
'singular_name' => __( 'Исследование случая' )
),
«публично» => правда,
'has_archive' => правда,
'rewrite' => array('slug' => 'case-studies'),
)
);
}
add_action( 'init', 'create_case_study_post_type' );
Это создало новый тип постов под названием «Исследования случаев», который вел себя аналогично обычным постам, но имел собственный архив и структуру таксономии.Другим критически важным использованием functions.php была загрузка внешних скриптов и стилей, что гарантировало, что на нашем сайте будут все необходимые библиотеки и фреймворки. Например, мы интегрировали библиотеки, такие как Slick.js для слайдеров и AOS (Animate on Scroll) для плавной анимации. Выборочно загружая эти активы только тогда, когда они были нужны (например, на определенных страницах или шаблонах), мы уменьшили ненужное раздувание и улучшили скорость загрузки страниц.
Вот как мы реализовали загрузку стилей и скриптов:
функция load_custom_scripts() {
// Загрузить слайдер Slick для определенных шаблонов
если( is_page_template('template-slider.php') ) {
wp_enqueue_style( 'slick-css', get_template_directory_uri() . '/css/slick.css' );
wp_enqueue_script( 'slick-js', get_template_directory_uri() . '/js/slick.min.js', array('jquery'), '', true );
}
// Загрузить анимации AOS на весь сайт
wp_enqueue_style( 'aos-css', get_template_directory_uri() . '/css/aos.css' );
wp_enqueue_script( 'aos-js', get_template_directory_uri() . '/js/aos.js', array('jquery'), '', true );
}
add_action( 'wp_enqueue_scripts', 'load_custom_scripts' );
Используя условные проверки (например,is_page_template()
), мы позаботились о том, чтобы ненужные скрипты не загружались на весь сайт, тем самым оптимизируя производительность.Чтобы повысить гибкость для нетехнических пользователей, управляющих содержимым сайта, мы добавили пользовательские шорткоды через functions.php . Эти шорткоды позволили пользователям легко вставлять сложные функциональные возможности или стилизованные элементы без необходимости прикасаться к коду. Например, мы создали шорткод для добавления пользовательских кнопок в любом месте сайта:
функция custom_button_shortcode($atts) {
$atts = shortcode_atts(
множество(
'label' => 'Нажмите здесь',
'url' => '#',
),
$atts,
'пользовательская_кнопка'
);
вернуть ' ' . esc_html( $atts['label'] ) . ' ';
}
add_shortcode('custom_button', 'custom_button_shortcode');
Этот шорткод позволил редакторам легко добавлять кнопки с пользовательским текстом и URL-адресами, что позволило быстро вносить изменения, не нарушая дизайн.Основное внимание во время перестройки сайта было уделено улучшению SEO и общей производительности сайта. Оригинальный сайт, созданный с помощью Elementor, имел проблемы с медленной загрузкой и неоптимальными методами SEO из-за раздутого кода и неоптимизированных изображений.
Чтобы обеспечить SEO-оптимизацию нашего нового сайта, мы с самого начала внедрили несколько передовых методов:
,
и т. д.), гарантируя, что поисковые системы смогут легко анализировать и понимать иерархию контента. Это особенно важно как для рейтингов SEO, так и для доступности.функция add_schema_markup() {
эхо '
{
"@context": "http://schema.org",
"@type": "Организация",
"имя": "ConveyThis",
"url": "https://www.conveythis.com",
"logo": "https://www.conveythis.com/logo.png",
"sameAs": [
"https://www.facebook.com/conveythis",
"https://twitter.com/conveythis"
]
}
';
}
add_action( 'wp_head', 'add_schema_markup' );
Производительность является критическим фактором не только для пользовательского опыта, но и для рейтингов SEO. Мы предприняли несколько шагов для улучшения скорости сайта:
Старый сайт накопил значительное количество «мусорных» данных из-за раздутости Elementor и неэффективной структуры базы данных. Чтобы обеспечить бесперебойную работу нового сайта, мы провели тщательную очистку и оптимизацию базы данных.
Как упоминалось ранее, даже после деактивации Elementor его стили и настройки все еще были встроены в базу данных. Мы использовали пользовательские запросы, чтобы удалить эти избыточные данные и очистить базу данных. Кроме того, мы удалили все неиспользуемые медиафайлы, пост-ревизии и просроченные переходные процессы, которые накопились со временем.
Мы также оптимизировали базу данных, добавив индексы к часто запрашиваемым столбцам, гарантируя, что запросы к базе данных будут быстрее и эффективнее. Например, добавление индекса кдата_пост
колонка ускорила запросы, связанные с последними публикациями, повысив производительность страниц нашего блога.
Решение создать новый сайт с нуля было обусловлено ограничениями и неэффективностью старого сайта. Простая смена темы не была жизнеспособным вариантом из-за несоответствий дизайна, раздутых стилей и проблем с производительностью, вызванных Elementor. Создав новый сайт с индивидуальной разработкой и расширенными пользовательскими полями, мы добились более эффективного, связного и профессионального сайта, который улучшает пользовательский опыт, обеспечивая при этом оптимизированные обновления и функциональность A/B-тестирования. Этот новый сайт обеспечивает прочную основу для будущего роста и улучшений.
Перевод — это гораздо больше, чем просто знание языков, это сложный процесс.
Следуя нашим советам и используя ConveyThis, ваши переведенные страницы найдут отклик у вашей аудитории и будут ощущаться как родные для целевого языка.
Хотя это требует усилий, результат стоит того. Если вы переводите веб-сайт, ConveyThis может сэкономить вам часы с помощью автоматизированного машинного перевода.
Попробуйте ConveyThis бесплатно в течение 7 дней!