PluginProbe ʕ •ᴥ•ʔ
Pods – Custom Content Types and Fields / 2.8.23.5
Pods – Custom Content Types and Fields v2.8.23.5
2.7.31.4 2.8.23.5 2.9.19.5 3.0.10.5 3.1.4.3 3.2.8.4 3.3.9.2 2.8.23.4 2.9.19.4 3.0.10.4 3.1.4.2 3.2.8.3 3.3.9.1 trunk 1.14.8 2.7.31.3 2.8.23.3 2.9.19.3 3.0.10.3 3.1.4.1 3.2.0 3.2.1 3.2.1.1 3.2.2 3.2.4 3.2.5 3.2.6 3.2.7 3.2.7.1 3.2.8 3.2.8.1 3.2.8.2 3.3.0 3.3.1 3.3.2 3.3.3 3.3.4 3.3.5 3.3.6 3.3.7 3.3.8 3.3.9
pods / tribe-common / src / Tribe / Terms.php
pods / tribe-common / src / Tribe Last commit date
Admin 1 week ago Ajax 1 week ago Asset 1 week ago Context 1 week ago Customizer 1 week ago Debug_Bar 1 week ago Dialog 1 week ago Documentation 1 week ago Duplicate 1 week ago Editor 1 week ago Image 1 week ago JSON_LD 1 week ago Languages 1 week ago Log 1 week ago Meta 1 week ago Models 1 week ago PUE 1 week ago Process 1 week ago Promoter 1 week ago REST 1 week ago Repository 1 week ago Service_Providers 1 week ago Shortcode 1 week ago Support 1 week ago Tabbed_View 1 week ago Tooltip 1 week ago Traits 1 week ago Utils 1 week ago Validator 1 week ago Widget 1 week ago Abstract_Deactivation.php 1 week ago Abstract_Plugin_Register.php 1 week ago App_Shop.php 1 week ago Assets.php 1 week ago Assets_Pipeline.php 1 week ago Autoloader.php 1 week ago Cache.php 1 week ago Cache_Listener.php 1 week ago Changelog_Reader.php 1 week ago Container.php 1 week ago Context.php 1 week ago Cost_Utils.php 1 week ago Credits.php 1 week ago Customizer.php 1 week ago DB_Lock.php 1 week ago Data.php 1 week ago Date_Utils.php 1 week ago Db.php 1 week ago Debug.php 1 week ago Dependency.php 1 week ago Deprecation.php 1 week ago Editor.php 1 week ago Error.php 1 week ago Exception.php 1 week ago Extension.php 1 week ago Extension_Loader.php 1 week ago Feature_Detection.php 1 week ago Field.php 1 week ago Field_Conditional.php 1 week ago Freemius.php 1 week ago Log.php 1 week ago Main.php 1 week ago Notices.php 1 week ago Plugin_Meta_Links.php 1 week ago Plugins.php 1 week ago Plugins_API.php 1 week ago Post_History.php 1 week ago Post_Transient.php 1 week ago Promise.php 1 week ago Repository.php 1 week ago Rewrite.php 1 week ago Settings.php 1 week ago Settings_Manager.php 1 week ago Settings_Tab.php 1 week ago Simple_Table.php 1 week ago Support.php 1 week ago Tabbed_View.php 1 week ago Template.php 1 week ago Template_Factory.php 1 week ago Template_Part_Cache.php 1 week ago Templates.php 1 week ago Terms.php 1 week ago Timezones.php 1 week ago Tracker.php 1 week ago Updater.php 1 week ago Validate.php 1 week ago View_Helpers.php 1 week ago
Terms.php
57 lines
1 <?php
2
3
4 class Tribe__Terms {
5
6 /**
7 * 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
8 * will be created.
9 *
10 * @param array|string $terms An array or comma separated list of term `term_id` or `slug` or a single `term_id` or `slug`.
11 * @param string $taxonomy
12 * @param bool $create_missing Whether terms that could not be found by `term_id` or `slug` should be creater or not.
13 *
14 * @return array An array containing the `term_id`s of the created terms.
15 */
16 public static function translate_terms_to_ids( $terms, $taxonomy, $create_missing = true ) {
17 $terms = is_string( $terms ) ? preg_split( '/\\s*,\\s*/', $terms ) : (array) $terms;
18
19 $term_ids = [];
20 foreach ( $terms as $term ) {
21 if ( ! $term instanceof WP_Term && ! strlen( trim( $term ) ) ) {
22 continue;
23 }
24
25 if ( $term instanceof WP_Term ) {
26 $term_info = $term->to_array();
27 } elseif ( is_numeric( $term ) ) {
28 $term = absint( $term );
29 $term_info = get_term( $term, $taxonomy, ARRAY_A );
30 } else {
31 $term_info = term_exists( $term, $taxonomy );
32 }
33
34 if ( ! $term_info ) {
35 // Skip if a non-existent term ID is passed.
36 if ( is_numeric( $term ) ) {
37 continue;
38 }
39
40 if ( true == $create_missing ) {
41 $term_info = wp_insert_term( $term, $taxonomy );
42 } else {
43 continue;
44 }
45 }
46
47 if ( is_wp_error( $term_info ) ) {
48 continue;
49 }
50
51 $term_ids[] = $term_info['term_id'];
52 }
53
54 return array_unique( $term_ids );
55 }
56 }
57