Соответствующий вопрос WPSE спрашивает, как получить термин, указав только идентификатор, без указания таксономии. Мой вопрос более философский. Как правило, вещи в ядре WP есть причина. Я пытаюсь понять, почему term_id не может быть основным ключом для этого термина - зачем нам нужна таксономия? Может ли однократная запись быть членом нескольких таксономий? Это, конечно, в настоящее время не поддерживается в API. Есть ли вариант использования, где это может быть желательно?
Или это обязательный $taxonomy
параметр в get_term()
рудиментарном хвосте из более раннего воплощения структуры базы данных?
wp_term_taxonomy
таблицы используется в качестве индекса для этой таблицы, что делает запрос быстрее (даже если это просто термин).EXPLAIN
говоритterm_id
.Ответы:
Я зарегистрировал тикет против этого с trac: http://core.trac.wordpress.org/ticket/20536
Однако оказывается, что на данный момент это НУЖНО, так как в настоящее время в WordPress (начиная с версии 2.x) есть ошибка, связывающая два термина с одним и тем же именем в один и тот же term_id! Таким образом, возможно (хотя и неверно), чтобы один термин ассоциировался с более чем одной таксономией. Смотрите эту ошибку: http://core.trac.wordpress.org/ticket/5809
Она довольно обширна, поэтому для ее исправления потребуется очень тщательное тестирование. Я постараюсь не забыть обновить этот вопрос, если будут какие-либо события.
источник
У терминов есть слага для поддержки архивов терминов. А наличие слагов два раза вызывает много минетрапов или "wontfix" в некоторых сценариях с постоянными ссылками.
Да: представьте, что у вас есть термины, например,
size
и у вас есть три названные таксономииlength
,width
иheight
(вы также можете подумать о цветах). Но это не поддерживается по причинам, указанным выше.Глядя на стол и запустив
EXPLAIN
,term_id
это первичный ключ. Я предполагаю, что в больших системах может быть быстрее запрашивать только определенные термины таксономии, используя (медленное) объединение, чем запрашивать все, сортировать их и фильтровать то, что вам нужно.источник