taxonomy_del_term

Хочешь помочь с переводом? Это очень просто и быстро. Лишь зарегистрируйся, и можешь тут же начать переводить.

modules/taxonomy/taxonomy.module, строка 561

Версии
5 – 6
taxonomy_del_term($tid)

Удаляет термин.

Параметры

$tid ID термина.

Возвращаемое значение

Статус-константа удаления (SAVED_DELETED).

▾ 4 функции вызывают taxonomy_del_term()

forum_confirm_delete_submit in modules/forum/forum.module
Implementation of forms api _submit call. Deletes a forum after confirmation.
taxonomy_del_vocabulary in modules/taxonomy/taxonomy.module
Удаляет указанный словарь.
taxonomy_save_term in modules/taxonomy/taxonomy.module
Вспомогательная функция для taxonomy_form_term_submit().
taxonomy_term_confirm_delete_submit in modules/taxonomy/taxonomy.module

Код

<?php
function taxonomy_del_term($tid) {
  $tids = array($tid);
  while ($tids) {
    $children_tids = $orphans = array();
    foreach ($tids as $tid) {
      // See if any of the term's children are about to be become orphans:
      if ($children = taxonomy_get_children($tid)) {
        foreach ($children as $child) {
          // If the term has multiple parents, we don't delete it.
          $parents = taxonomy_get_parents($child->tid);
          if (count($parents) == 1) {
            $orphans[] = $child->tid;
          }
        }
      }

      $term = (array) taxonomy_get_term($tid);

      db_query('DELETE FROM {term_data} WHERE tid = %d', $tid);
      db_query('DELETE FROM {term_hierarchy} WHERE tid = %d', $tid);
      db_query('DELETE FROM {term_relation} WHERE tid1 = %d OR tid2 = %d', $tid, $tid);
      db_query('DELETE FROM {term_synonym} WHERE tid = %d', $tid);
      db_query('DELETE FROM {term_node} WHERE tid = %d', $tid);

      module_invoke_all('taxonomy', 'delete', 'term', $term);
    }

    $tids = $orphans;
  }

  cache_clear_all();

  return SAVED_DELETED;
}
?>
Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии

Вход в систему