"Fossies" - the Fresh Open Source Software Archive

Member "drupal-8.9.10/core/modules/taxonomy/src/TermStorageInterface.php" (26 Nov 2020, 4735 Bytes) of package /linux/www/drupal-8.9.10.tar.gz:


As a special service "Fossies" has tried to format the requested source page into HTML format using (guessed) PHP source code syntax highlighting (style: standard) with prefixed line numbers and code folding option. Alternatively you can here view or download the uninterpreted source code file. For more information about "TermStorageInterface.php" see the Fossies "Dox" file reference documentation.

    1 <?php
    2 
    3 namespace Drupal\taxonomy;
    4 
    5 use Drupal\Core\Entity\EntityInterface;
    6 use Drupal\Core\Entity\ContentEntityStorageInterface;
    7 
    8 /**
    9  * Defines an interface for taxonomy_term entity storage classes.
   10  */
   11 interface TermStorageInterface extends ContentEntityStorageInterface {
   12 
   13   /**
   14    * Removed reference to terms from term_hierarchy.
   15    *
   16    * @param array $tids
   17    *   Array of terms that need to be removed from hierarchy.
   18    *
   19    * @todo Remove this method in Drupal 9.0.x. Now the parent references are
   20    *   automatically cleared when deleting a taxonomy term.
   21    *   https://www.drupal.org/node/2785693
   22    */
   23   public function deleteTermHierarchy($tids);
   24 
   25   /**
   26    * Updates terms hierarchy information with the hierarchy trail of it.
   27    *
   28    * @param \Drupal\Core\Entity\EntityInterface $term
   29    *   Term entity that needs to be added to term hierarchy information.
   30    *
   31    * @todo remove this method Drupal 9.0.x. Now the parent references are
   32    *   automatically updates when when a taxonomy term is added/updated.
   33    *   https://www.drupal.org/node/2785693
   34    */
   35   public function updateTermHierarchy(EntityInterface $term);
   36 
   37   /**
   38    * Finds all parents of a given term ID.
   39    *
   40    * @param int $tid
   41    *   Term ID to retrieve parents for.
   42    *
   43    * @return \Drupal\taxonomy\TermInterface[]
   44    *   An array of term objects which are the parents of the term $tid.
   45    */
   46   public function loadParents($tid);
   47 
   48   /**
   49    * Finds all ancestors of a given term ID.
   50    *
   51    * @param int $tid
   52    *   Term ID to retrieve ancestors for.
   53    *
   54    * @return \Drupal\taxonomy\TermInterface[]
   55    *   An array of term objects which are the ancestors of the term $tid.
   56    */
   57   public function loadAllParents($tid);
   58 
   59   /**
   60    * Finds all children of a term ID.
   61    *
   62    * @param int $tid
   63    *   Term ID to retrieve children for.
   64    * @param string $vid
   65    *   An optional vocabulary ID to restrict the child search.
   66    *
   67    * @return \Drupal\taxonomy\TermInterface[]
   68    *   An array of term objects that are the children of the term $tid.
   69    */
   70   public function loadChildren($tid, $vid = NULL);
   71 
   72   /**
   73    * Finds all terms in a given vocabulary ID.
   74    *
   75    * @param string $vid
   76    *   Vocabulary ID to retrieve terms for.
   77    * @param int $parent
   78    *   The term ID under which to generate the tree. If 0, generate the tree
   79    *   for the entire vocabulary.
   80    * @param int $max_depth
   81    *   The number of levels of the tree to return. Leave NULL to return all
   82    *   levels.
   83    * @param bool $load_entities
   84    *   If TRUE, a full entity load will occur on the term objects. Otherwise
   85    *   they are partial objects queried directly from the {taxonomy_term_data}
   86    *   table to save execution time and memory consumption when listing large
   87    *   numbers of terms. Defaults to FALSE.
   88    *
   89    * @return object[]|\Drupal\taxonomy\TermInterface[]
   90    *   An array of term objects that are the children of the vocabulary $vid.
   91    */
   92   public function loadTree($vid, $parent = 0, $max_depth = NULL, $load_entities = FALSE);
   93 
   94   /**
   95    * Count the number of nodes in a given vocabulary ID.
   96    *
   97    * @param string $vid
   98    *   Vocabulary ID to retrieve terms for.
   99    *
  100    * @return int
  101    *   A count of the nodes in a given vocabulary ID.
  102    */
  103   public function nodeCount($vid);
  104 
  105   /**
  106    * Reset the weights for a given vocabulary ID.
  107    *
  108    * @param string $vid
  109    *   Vocabulary ID to retrieve terms for.
  110    */
  111   public function resetWeights($vid);
  112 
  113   /**
  114    * Returns all terms used to tag some given nodes.
  115    *
  116    * @param array $nids
  117    *   Node IDs to retrieve terms for.
  118    * @param array $vocabs
  119    *   (optional) A vocabularies array to restrict the term search. Defaults to
  120    *   empty array.
  121    * @param string $langcode
  122    *   (optional) A language code to restrict the term search. Defaults to NULL.
  123    *
  124    * @return array
  125    *   An array of nids and the term entities they were tagged with.
  126    */
  127   public function getNodeTerms(array $nids, array $vocabs = [], $langcode = NULL);
  128 
  129   /**
  130    * Returns the hierarchy type for a specific vocabulary ID.
  131    *
  132    * @param string $vid
  133    *   Vocabulary ID to retrieve the hierarchy type for.
  134    *
  135    * @return int
  136    *   The vocabulary hierarchy.
  137    *   Possible values:
  138    *    - VocabularyInterface::HIERARCHY_DISABLED: No parents.
  139    *    - VocabularyInterface::HIERARCHY_SINGLE: Single parent.
  140    *    - VocabularyInterface::HIERARCHY_MULTIPLE: Multiple parents.
  141    */
  142   public function getVocabularyHierarchyType($vid);
  143 
  144   /**
  145    * Gets a list of term IDs with pending revisions.
  146    *
  147    * @return int[]
  148    *   An array of term IDs which have pending revisions, keyed by their
  149    *   revision IDs.
  150    *
  151    * @internal
  152    */
  153   public function getTermIdsWithPendingRevisions();
  154 
  155 }