Jetpack 7.1 был выпущен ранее в этом месяце с новыми блоками для WordAds, рабочего времени, контактной информации, слайд-шоу и видео. В этом выпуске также незаметно добавлены предложения на экран поиска плагинов, изменение, которое не было хорошо воспринято сообществом разработчиков. Если пользователь ищет плагин, у которого есть функция, которая уже предлагается Jetpack, плагин вставит искусственный (и недопустимый) результат поиска в первый слот для карты плагина, идентифицируя соответствующую функцию Jetpack.
Хотя эти предложения в результатах поиска плагинов не были представлены в качестве заголовка в сообщении о выпуске 7.1, они были четко перечислены в журнале изменений в разделе «Улучшения».
Манипулирование результатами поиска, даже для вставки искусственного результата, с использованием уже установленного плагина, является важной новой разработкой среди плагинов, размещенных на WordPress.org. Automattic создает прецедент для других авторов плагинов, которые хотят рекомендовать свои собственные надстройки или расширения, когда пользователи соответствуют определенным условиям поиска.
В первоначальном доказательстве концепции функции руководитель продукта Jetpack Бо Лебенс объяснил мотивацию добавления предложений на экран поиска:
Мы видели, что люди с установленным и активированным Jetpack часто ищут возможности Jetpack (даже по имени) на экране Plugins> Add New в wp-admin. Этот новый модуль пытается обнаружить эти поисковые запросы и предоставить искусственный результат поиска, который указывает, что то, что они ищут, находится в Jetpack, который у них уже есть и который уже активен.
За восемь лет с момента первого выпуска Jetpack вырос до 45 модулей. Большинство пользователей не знакомы со всем, что предлагает плагин. Фактически, многие пользователи, возможно, даже не установили Jetpack сами, поскольку он часто поставляется предварительно установленным с хостингом. Предложения могут помешать пользователям добавлять альтернативные сторонние плагины, так как размещение модуля Jetpack в результатах неявно подразумевает, что это худшие варианты по сравнению с существующими модулями.
Одна из причин, по которой эта функция вызывает недовольство многих разработчиков, заключается в том, что пользовательский интерфейс не дает понять, что это искусственный результат, а не что-то, сгенерированное алгоритмом каталога плагинов. Хотя он предназначен больше для использования в качестве уведомления, для обычного пользователя он практически неотличим от рекламы в его текущей реализации. Он существует не так давно, но со временем разработчикам плагинов может стать труднее предлагать плагины, которые конкурируют с функциями Jetpack.
Предложения функций в результатах поиска плагинов стали горячей темой в Slack Post Status , куда заглянул Гэри Пендергаст из Automattic, чтобы подтвердить намерения команды Jetpack.
«Я разговаривал с некоторыми людьми из Jetpack о том, что происходит», – сказал Пендергаст. «Я думаю, что конечная цель команды довольно хороша, и она решает настоящую проблему WordPress. Слишком часто владельцы сайтов устанавливают множество плагинов, которые им не нужны, что в конечном итоге создает всевозможные проблемы с безопасностью, производительностью и стабильностью. В этом конкретном случае использования, если владелец сайта ищет функциональные возможности, с которыми уже работает Jetpack, владелец должен знать об этом ».
Пендергаст также сказал, что, по его мнению, ядро WordPress должно предлагать API, чтобы любой плагин мог делать что-то подобное.
Команда плагинов заявляет, что результаты искусственного поиска Jetpack не нарушают правила WordPress.org
Хотя легко придумать различные способы злоупотребления этим средством для рекламы существующих функций плагина, команда плагинов WordPress.org готова справиться с потенциальным наплывом различных реализаций в каждом конкретном случае.
«На самом деле это ничего не рекламирует – это просто добавление результатов поиска для частей плагина, которые у вас уже есть и о которых вы, возможно, не знаете, так что это не противоречит никаким правилам», – сказал Сэмюэл «Отто» Вуд. «Если бы это каким-то образом вводило в заблуждение, то все было бы иначе».
Вуд сказал, что команда обсудила это, но пришла к выводу, что любая реализация чего-то подобного в других плагинах должна быть проверена, чтобы увидеть, не вводит ли она что-нибудь в заблуждение.
«На самом деле это всегда будет своего рода приговор», – сказал Вуд. «Например, если плагин должен был вставлять результаты поиска для других плагинов, это было бы неправильно, потому что это вводит в заблуждение. Но это не тот случай. Он просто пытается сказать: «Эй, у вас уже установлен плагин, который делает то, что вы ищете», поэтому он пытается быть полезным в этом отношении. По общему признанию, это не обязательно может быть лучшим способом достиженя этой цели. Но это действительно так ».
Вуд не выдвигал жестких требований о том, чтобы искусственный результат был отклонен, но сказал, что каждый раз, когда разработчик вставляет что-то в экран, где обычно не было бы, отключение функциональности – это хороший UX. Он не думает, что многие другие авторы плагинов будут реализовывать что-то подобное, поскольку большинство из них не являются наборами из десятков плагинов и надстроек. Однако этот тип предложения кажется применимым и к плагинам сбора блоков, которые включают десятки блоков Гутенберга.
«Пользователям будет действительно сложно, когда это будут реализовывать все основные авторы плагинов», – сказал Гохил в ответ на комментарии к скриншоту, который он написал в Твиттере. «Они используют JS для взлома поиска плагинов с помощью ловушки admin_enqueue_scripts, и это нехорошо. Я не сторонник этого ».
Если другие авторы плагинов начнут добавлять предложения, пользователи могут увидеть несколько строк искусственных результатов, прежде чем увидеть какие-либо реальные, в зависимости от того, какие плагины они установили. Разработчики плагинов уже проводят мозговой штурм, чтобы исключить предложения по функциям. Скорее всего, скоро такие плагины, как Hide Jetpack Promotions, удалят искусственные результаты поиска, чтобы поддерживать результаты, предоставляемые WordPress.org.
Вуд сказал, что команда плагинов не намерена писать какие-либо новые инструкции для авторов плагинов, создающих свои собственные реализации предложений функций на экране поиска.
«Разница всегда будет заключаться в намерениях», – сказал Вуд. «Цель JP здесь – уведомить пользователя о существовании функции, о которой он может не знать. Это попытка помочь пользователю, а не исключить конкуренцию. Он не удаляет результаты поиска. Он не меняет их порядок и не фильтрует. Он просто добавляет подсказку о функции, которую вы ищете. Если у вас нет JP, он ничего не может сделать. Это не реклама других плагинов или чего-то подобного ».
Jetpack также отслеживает поисковые запросы длиной более трех символов , и Вуд подтвердил, что это также находится в рамках рекомендаций, если это раскрывается пользователю.
«Весь модуль отслеживания не активируется до тех пор, пока вы не согласитесь с ToS, так что, честно говоря, это разрешено», – сказал Вуд. «Они отслеживают множество вещей для статистики и тому подобного. На самом деле, то же самое и со многими другими плагинами. Пока вы сначала спрашиваете пользователя, прежде чем что-либо отслеживать, данные отслеживания разрешены. Согласие – это правило ».
Вуд сказал, что он обнаружил, что в отслеживании поисковых запросов нет необходимости, поскольку WordPress.org уже собирает эту информацию через свою новую поисковую систему, работающую на ElasticSearch.
«В любом случае мы получаем все поисковые запросы на серверах WordPress.org, так что и у нас, и у них вроде бы они уже есть», – сказал Вуд. «В конце концов, автоматисты создали нашу новейшую поисковую систему с плагинами. Отслеживать их с помощью Jetpack кажется пустой тратой, когда они буквально получают все запросы, которые проходят через поисковую систему ».
Искусственные результаты поиска Jetpack, хотя и неприемлемы, занимают первое место, полностью обходя алгоритм. Создается впечатление, что встроенная функция Jetpack либо является продвигаемым списком, либо превосходит все другие параметры, доступные в каталоге.
Хотя предлагаемый модуль может работать более гармонично с другими функциями Jetpack, чем сторонний плагин, модули построены так, чтобы быть довольно общими с точки зрения функций. Они удовлетворяют базовые потребности наибольшего числа пользователей, но редко предоставляют больше возможностей, чем отдельный плагин, предназначенный для выполнения чего-то подобного. Пользователи вполне могут искать замену тому, что предлагает Jetpack. Возможность легко отключать предложения в результатах поиска с помощью переключателя может иметь большое значение для дипломатии.