В предыдущем посте я говорил о философии дизайна WordPress о решениях, а не о вариантах. И я работаю над тем, чтобы добраться до сути, но сначала я должен немного заложить основу для всего этого.
Вы можете прочитать весь набор философий на этой странице, но вот суть той, которую я только что упомянул:
При принятии решений именно этих пользователей мы учитываем в первую очередь. Отличным примером такого рассмотрения являются опции программного обеспечения. Каждый раз, когда вы даете пользователю выбор, вы просите его принять решение. Когда пользователю все равно или он не понимает вариант, это в конечном итоге приводит к разочарованию.
Как разработчики, мы иногда чувствуем, что предоставление вариантов для всего — это хорошо, у вас никогда не может быть слишком много вариантов, верно? В конечном счете, эти выборы становятся техническими, выборами, которые не интересуют среднего конечного пользователя.
Наша обязанность как разработчиков — принимать продуманные проектные решения и не возлагать бремя технического выбора на наших конечных пользователей.
Это, пожалуй, моя любимая философия, которая определяет, что и как должно быть в ядре WordPress; хотя было бы упущением, если бы я не сказал, что, по моему мнению, есть области для улучшения.
(Я знаю, что именно здесь дискуссия может перейти в левое поле, но я не знаю, как это сделать, и я не пытаюсь начать квотербек в кресле .)
Но вот вопрос:
Если есть область пользовательского интерфейса WordPress, которую можно улучшить с помощью плагина, выполняющего тот же набор функций, что и в плагине, стоит ли создавать плагин, если эта функция уже существует?
Имеет ли смысл создавать плагины WordPress для существующих функций, если плагин придерживается философии «дизайн, а не опции» в большей степени, чем основная функция?
Во-первых, я понимаю, что в этом утверждении присутствует недостаток логики. Я имею в виду, что у меня есть:
- Нам нужно принимать больше решений от имени пользователя и предлагать ему меньше вариантов.
- Опция уже существует в ядре.
- Создание плагина для внедрения уже существующей функциональности, тем самым дублируя ее, но оптимизируя ее так, чтобы она принимала решение за пользователя от его имени.
Так что, возможно, обсуждение остановится на третьем пункте выше. Но ради обсуждения (для аргумента, если это ваш вкус) я хочу взять пример только для этого поста.
Взгляните на настройки обсуждения
Настройки обсуждения, которые существуют в меню «Настройки» для WordPress, могут быть немного сложными даже для, как мне кажется, блоггера среднего уровня, не говоря уже о новичке или типе разработчика.
Экран настроек обсуждения.
Требуется немного времени не только для того, чтобы прочитать существующие варианты, но и для того, чтобы разобраться в них. Кроме того, есть более продвинутые параметры, такие как черный список комментариев, который, я думаю, может быть частью вкладки «Дополнительно ».
Но я отвлекся.
В разделе «Другие настройки комментариев» есть параметр, который гласит:
«Автоматически закрывать комментарии к статьям старше [x] дней».
Эта функция сама по себе неплохая, но что, если я хочу закрыть комментарии к статьям старше [x] дней, только если у них 0 комментариев. Теперь это условие — то есть «если у них нет комментариев» — я думаю, является примером того, с чем может справиться плагин.
Но тот вариант, что представлен как есть. То есть:
«Автоматически закрывать комментарии к статьям старше [x] дней».
Я вижу причину, по которой это вариант. Никто не должен принимать решение от имени пользователя о том, как следует обрабатывать его комментарии.
- Но так ли ясно, как это представлено?
- Способен ли экран сам по себе, чтобы пользователи читали, отвечали, настраивали и были ли это необходимо? Или он настолько перегружен опциями, что от него просто отказываются?
- Может ли эта конкретная функция быть отнесена к плагину (или части набора плагинов), непосредственно связанному с управлением комментариями, чтобы пользователи могли контролировать свои комментарии через плагины?
В конце концов, плагины в первую очередь предназначены для функциональности, а модерация комментариев больше связана с функциональностью, чем с представлением.
Имеет ли смысл тогда создавать плагин WordPress для существующих функций, подобных этой, с идеей, что это простая установка, активация и работа для пользователей без необходимости просматривать весь список опций и понимать, что представлено? их?
Лично я на грани, но мне искренне интересно хотя бы поэкспериментировать с ним, чтобы увидеть, как он может работать. Конечно, это означает, что я должен просто разместить свой код там, где мои мысли — и, возможно, я так и сделаю 😎 — но это не меняет того факта, что мне интересны идеи для других.