Когда я должен использовать существующее поле?

8

Когда я добавляю новые поля к типу контента, когда я должен возобновить существующее поле? например, если мне нужно поле изображения для моего типа контента, всегда ли полезно повторно использовать существующее поле изображения?

hknik
источник
3
если он будет использоваться таким же образом, доступен для тех же пользователей / ролей, будет одинаковым по тематике и т. д., тогда да, его будет намного легче поддерживать, если вы повторно используете то же поле.
Jimajamma
1
но если изображение будет, например, фотографией пользователя в одном типе контента, а миниатюра изображения товара в другом, то нет, создайте разные поля.
Jimajamma
@Jimajamma Ты уверен насчет второго комментария? Я думаю, что это можно настроить в настройках отображения типа контента.
hknik
Конечно, это может быть отображено в любом случае вы хотите, мой комментарий к названию поля. например, field_avatar, используемый в качестве изображения профиля пользователя в одном типе контента, перегруженного в качестве эскиза продукта в другом типе, просто сбивает с толку с точки зрения именования.
Джимаджамма

Ответы:

9

Рассмотрим преимущества и недостатки повторного использования полей:

  • Производительность : есть небольшое увеличение производительности от повторного использования полей. Однако для большинства сайтов с небольшим количеством полей это незначительная разница.
  • Ремонтопригодность . Теоретически, если вы повторно используете одно и то же поле для одной и той же цели в нескольких типах контента, то, если вы решите изменить его функциональность позже, вам нужно будет изменить его только в одном месте. Точно так же, если вы хотите разделить тему на сущности одинаково, вам нужно использовать только один селектор. На практике это случается редко, и чаще всего получается обратное: вы использовали одно и то же поле в нескольких местах, а затем понимаете, что им действительно нужно вести себя по-разному.
  • Настройка : Очевидно, что для повторного добавления существующего поля требуется меньше времени, чем для добавления нового.
  • Переносимость : если вы экспортируете поля с объектами, лучше не использовать их между объектами без крайней необходимости. Технически, в повторном использовании полей нет ничего плохого (поскольку вы можете экспортировать базы полей и экземпляры полей отдельно), но на практике это приводит к путанице и циклическим зависимостям. Если вы решите не использовать поля повторно, вы можете позволить себе префиксировать их типом содержимого / комплектом, к которому они прикреплены, например, «field_article_image», «field_page_taxonomy» и т. Д., Что облегчает переносимость и обслуживание.

В случае, если из моего тона не ясно, я предпочитаю никогда не использовать повторно поля, если не будет полностью, полностью, на 100% ясно, что они действительно и навсегда будут использоваться для той же цели.

Датчанин пауэлл
источник
Согласовано. Также, если у вас разные настройки поля, скажем, одно изображение имеет только 1, а другое может использовать неограниченное количество, если вы измените поле, оно изменит все его экземпляры.
chadpeppers