| Server IP : 78.24.162.143 / Your IP : 216.73.217.80 Web Server : Apache System : Linux hosting.cormo.systems 5.15.0-179-generic #189-Ubuntu SMP Tue May 5 18:20:56 UTC 2026 x86_64 User : web63 ( 5058) PHP Version : 7.4.33 Disable Function : create_functions,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare, MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /var/www/clients/client34/web63/web/wp-content/plugins/pods/tribe-common/src/Tribe/ |
Upload File : |
<?php
class Tribe__Terms {
/**
* Translates an array or list of `term_id`s or `slug`s to an array of `term_id`s; if a term is missing and specified by `slug` it
* will be created.
*
* @param array|string $terms An array or comma separated list of term `term_id` or `slug` or a single `term_id` or `slug`.
* @param string $taxonomy
* @param bool $create_missing Whether terms that could not be found by `term_id` or `slug` should be creater or not.
*
* @return array An array containing the `term_id`s of the created terms.
*/
public static function translate_terms_to_ids( $terms, $taxonomy, $create_missing = true ) {
$terms = is_string( $terms ) ? preg_split( '/\\s*,\\s*/', $terms ) : (array) $terms;
$term_ids = [];
foreach ( $terms as $term ) {
if ( ! $term instanceof WP_Term && ! strlen( trim( $term ) ) ) {
continue;
}
if ( $term instanceof WP_Term ) {
$term_info = $term->to_array();
} elseif ( is_numeric( $term ) ) {
$term = absint( $term );
$term_info = get_term( $term, $taxonomy, ARRAY_A );
} else {
$term_info = term_exists( $term, $taxonomy );
}
if ( ! $term_info ) {
// Skip if a non-existent term ID is passed.
if ( is_numeric( $term ) ) {
continue;
}
if ( true == $create_missing ) {
$term_info = wp_insert_term( $term, $taxonomy );
} else {
continue;
}
}
if ( is_wp_error( $term_info ) ) {
continue;
}
$term_ids[] = $term_info['term_id'];
}
return array_unique( $term_ids );
}
}