Каталог статей
WordPress Даже самый красивый код может парализовать ваш веб-сайт, если вы выберете неправильные плагины.
Это не преувеличение. Я видел слишком много сайтов, которые работали совершенно нормально, а затем скорость их загрузки подскочила с 0.8 секунды до 3 секунд после добавления нескольких фрагментов кода. После долгого расследования выяснилось, что определенный фрагмент кода выполнял множество ненужных запросов к базе данных.
Итак, сегодня поговорим о WPCode и Fluent Snippets — двух плагинах для управления фрагментами кода, которые часто сравнивают в сообществе WordPress.
Честно говоря, я активно использовал оба метода и даже помог друзьям избежать некоторых ошибок. Сегодня я поделюсь своим честным опытом.
Позвольте мне начать с некоторой предыстории.
В WordPress существует несколько основных способов добавления пользовательского кода. Один из них — прямое изменение файла functions.php темы, что просто и понятно, но все данные теряются при каждом обновлении; другой — использование дочерней темы, что немного лучше, но все равно требует больших затрат на обслуживание; и еще один — поиск надежного плагина для добавления фрагментов кода, что безопаснее в управлении и выполнении.
В этих двух направлениях конкурируют WPCode и Fluent Snippets.
WPкодЭто проверенный временем продукт от команды WPCode, который всегда пользовался хорошей репутацией в сообществе WordPress. Его рейтинг составляет 4.9 из 10; не стоит обманываться всего лишь 31 отзывом — эта оценка говорит сама за себя.
Fluent SnippetsЕщё один продукт от команды WPManageNinja — да, той самой команды, которая создала FluentCRM. Он имеет более 40 000 установок и рейтинг 4.6, что немного меньше, чем у WPCode, но в четыре раза больше установок.
Это интересно. Обратная зависимость между объемом установок и рейтингами должна иметь какое-то объяснение.
Опыт работы редактором
WPCode использует редактор ACE, который, поверьте, имеет отчетливо традиционный стиль WordPress. В нем есть подсветка кода, но цветовая схема довольно консервативна, а о автодополнении кода можно и вовсе забыть. Если вы привыкли к VS Code, использование его здесь вызовет у вас дезориентирующее чувство: «Ах, я вернулся на пять лет назад».
Fluent Snippets — это другое дело; он напрямую интегрирован в Monaco Editor.
Да, это тот же редактор, что и VS Code. Подсветка кода, автозавершение, синтаксические подсказки — весь процесс практически идентичен написанию кода локально. Когда я впервые им воспользовался, я мгновенно влюбился в него. Это было ощущение: «Наконец-то плагин, который хочет создать приличный редактор!»
Но вот в чем вопрос: обязательно ли более качественный редактор означает лучший пользовательский опыт?
Не обязательно.
У меня есть друг в Шэньчжэне, который управляет бизнесом по созданию контентных веб-сайтов. Он единственный владелец сайта, самостоятельно поддерживает более тридцати сайтов. Он сказал мне, что обожает WPCode. Почему? Потому что это просто. Открываешь админку, кликаешь пару раз, появляется код, и всё. Ему не нужны никакие навороченные функции; ему нужна стабильность и безошибочная работа.
Эти слова тогда меня очень тронули.
Да, Monaco Editor — отличный и очень мощный инструмент. Но для человека, который ежедневно управляет более чем тридцатью веб-сайтами, освоение программы само по себе является сложной задачей.
存储方式
Раз уж мы обсудили редактора, перейдём к чему-нибудь более серьёзному.
WPкод Данные хранятся в базе данных; все фрагменты кода хранятся в таблице `wp_options`. Каждая операция чтения включает в себя запрос к базе данных, и в сценариях с высокой параллельностью количество запросов может накапливаться.
Fluent Snippets Фрагменты кода хранятся в виде PHP-файлов в каталоге wp-content/fluent-snippets/. WordPress подключает их напрямую во время выполнения, минуя запросы к базе данных.
Теоретически, хранение файлов происходит быстрее и безопаснее.
Почему это считается более безопасным? Потому что файловое хранение по своей природе изолирует риск SQL-инъекций; в базе данных нет фрагментов кода, которые можно было бы внедрить.
Но есть одно «но».
Хранение файлов также имеет свои проблемы. При каждом обновлении фрагмента кода требуются права на запись. Если сервер настроен неправильно или в некоторых специальных средах виртуального хостинга, могут возникнуть проблемы с записью файлов. Ранее кто-то пожаловался в группе на то, что код перестал работать после обновления фрагмента, и после расследования выяснилось, что проблема заключалась в правах доступа к файлам.
Поэтому универсального решения не существует; для каждого случая существует свой сценарий.
Условия погрузки
Именно здесь кроется наиболее очевидное различие между двумя плагинами.
Условная загрузка в WPCode довольно проста и поддерживает как активную, так и фоновую загрузку. Вы также можете включить или отключить её глобально. Всё очень просто.
Функция условной загрузки в Fluent Snippets просто невероятна; она может основываться на ролях пользователей, правилах URL-адресов, типах устройств и даже пользовательских полях. Ее профессионализм зашкаливает.
что это значит?
Это означает, что вы можете добиться очень точного контроля. Например, требование «загружайте этот код только на мобильных устройствах, где URL содержит /product/ и пользователь не авторизован» практически невозможно реализовать в WPCode, но это стандартная функция Fluent Snippets.
Конечно, это влечет за собой затраты. Чем сложнее конфигурация, тем выше затраты на обслуживание. Спустя шесть месяцев возникает вопрос, понимаете ли вы вообще условия и правила, которые сами написали.
Мои чувства
WPCode подобен швейцарскому армейскому ножу: он достаточно функционален и стабилен, но его возможности имеют ограничения.
Fluent Snippets — это как профессиональный набор инструментов; вы можете сделать больше, но вам нужно знать, что вы делаете.
Честно говоря, эти двое даже не являются конкурентами в одной и той же области.
Если у вас всего лишь личный веб-сайт или небольшой бизнес, WPCode вполне достаточно. Его главная ценность заключается в эффективном управлении кодом, предотвращении ошибок и обеспечении стабильной работы.
Если вы выполняете сложные операции или ваш сайт содержит сложную бизнес-логику, условная загрузка Fluent Snippets может стать настоящим спасением.
Практическое применение: Тип контента не может напрямую вызывать шорткоды.
Итак, теперь, когда мы рассмотрели основные сравнения, давайте перейдем к нескольким практическим примерам.
Многие создают фрагмент кода типа Content в Fluent Snippets, а затем вставляют в него шорткоды.
такой как
[nihaoya]Это верно.
Поверьте, я уже попадал в эту ловушку раньше.
Fluent Snippets поддерживает три типа фрагментов кода: PHP, Content и CSS/JS.
Если для вашего фрагмента кода установлен тип «Содержимое (PHP+HTML)», напишите внутри следующее: [nihaoya]Оно не сможет его обработать; оно сможет только... [nihaoya] Эти символы выводятся в точности так, как они были изначально.
Это просто обычный текст, а не сокращённый вывод.
Для того чтобы шорткод действительно выполнился, его необходимо обернуть в PHP-функцию `do_shortcode()`. Синтаксис выглядит следующим образом:
<?php echo do_shortcode('[nihaoya]'); ?>
Таким образом, WordPress проанализирует шорткод и выведет соответствующее содержимое.
Мне потребовалось много времени, чтобы это понять; в документации это не было четко указано.
Если ваш фрагмент кода использует тип PHP, всё ещё проще: просто добавьте оператор `return` в функцию, зарегистрируйте её с помощью `add_shortcode`, и шорткод будет работать корректно. Нет никакой двусмысленности; проблема заключается исключительно в типе Content.
Я подозреваю, что человек, написавший эту функцию, исходил из предположения, что тип Content предназначен в первую очередь для HTML-контента, и что его сокращенную запись следует обрабатывать с помощью типов PHP, отсюда и отсутствие четкого указания на это в интерфейсе. Однако на практике многие используют оба типа взаимозаменяемо, что приводит к проблемам.
вывод
WPкод Кому это подходит? Небольшим веб-сайтам с простыми потребностями и тем, кто не хочет прилагать много усилий. Он готов к использованию сразу после установки, не требует длительного обучения и легко устраняет неполадки в случае их возникновения.
Fluent Snippets Кому это подходит? Сайтам среднего и крупного размера со сложным условным управлением и ориентацией на производительность. Хранение файлов обеспечивает более высокую скорость выполнения, условная загрузка — более тонкий контроль, а Monaco Editor — более комфортный процесс разработки.
Разумеется, это при условии, что вы готовы оплатить стоимость обучения за эти "дополнительные" возможности.
Честно говоря, если вы просто добавляете код Google Analytics или уведомление об авторских правах в конце статьи, WPCode вполне подойдёт. Нет никакой необходимости настраивать Fluent Snippets для «более совершенного редактора».
Однако, если ваш сайт требует A/B-тестирования и загрузки разного кода в зависимости от устройства, роли пользователя или типа страницы, условная загрузка Fluent Snippets может избавить вас от необходимости принимать решения вручную и писать код вручную.
И последнее.
Инструменты — это всего лишь средства; их истинная ценность заключается в том, сможете ли вы максимально использовать их потенциал.
WPCode — популярный инструмент, отличающийся стабильностью, простотой использования и подходящий для быстрого развертывания. Fluent Snippets — профессиональный инструмент, предлагающий более высокую производительность, более гибкое управление условиями и подходящий для разработчиков и сложных веб-сайтов.
Выбор плагинов — это не демонстрация ваших навыков, а повышение стабильности, скорости и безопасности вашего веб-сайта.
Я твердо убежден, что то, что подходит именно вам, — это и есть лучшее, а не обязательно то, что имеет больше функций или мощнее.
резюме в одном предложении
- Небольшой сайт, простые требования → WPкод
- Крупный объект, сложный контроль условий → Fluent Snippets
И наконец, вот вам совет: самое ценное — это получить практический опыт и запустить код. Не стоит просто добавлять этот ресурс в закладки, не попрактиковавшись!
Блог Хоуп Чен Вейлян ( https://www.chenweiliang.com/ Статья "WPCode против Fluent Snippets: что лучше? Сравнение плагинов и практическое руководство", размещенная здесь, может быть вам полезна.
Добро пожаловать, чтобы поделиться ссылкой на эту статью:https://www.chenweiliang.com/cwl-34009.html
