• Class
  • Tree
  • Deprecated

Classes

  • Papi_Admin
  • Papi_Admin_Ajax
  • Papi_Admin_Assets
  • Papi_Admin_Columns
  • Papi_Admin_Menu
  • Papi_Admin_Meta_Box
  • Papi_Admin_Meta_Box_Tabs
  • Papi_Admin_Meta_Handler
  • Papi_Admin_Option_Handler
  • Papi_Admin_Taxonomy
  • Papi_Admin_View
  • Papi_Attachment_Type
  • Papi_CLI
  • Papi_CLI_Command
  • Papi_CLI_Post_Command
  • Papi_CLI_Term_Command
  • Papi_CLI_Type_Command
  • Papi_Conditional_Rules
  • Papi_Container
  • Papi_Core_Autoload
  • Papi_Core_Box
  • Papi_Core_Conditional
  • Papi_Core_Conditional_Rule
  • Papi_Core_Data_Handler
  • Papi_Core_Meta_Store
  • Papi_Core_Property
  • Papi_Core_Tab
  • Papi_Core_Type
  • Papi_Entry_Type
  • Papi_Loader
  • Papi_Option_Store
  • Papi_Option_Type
  • Papi_Page_Type
  • Papi_Porter
  • Papi_Porter_Driver
  • Papi_Porter_Driver_Core
  • Papi_Post_Store
  • Papi_Property
  • Papi_Property_Bool
  • Papi_Property_Checkbox
  • Papi_Property_Color
  • Papi_Property_Datetime
  • Papi_Property_Divider
  • Papi_Property_Dropdown
  • Papi_Property_Editor
  • Papi_Property_Email
  • Papi_Property_File
  • Papi_Property_Flexible
  • Papi_Property_Gallery
  • Papi_Property_Group
  • Papi_Property_Hidden
  • Papi_Property_Html
  • Papi_Property_Image
  • Papi_Property_Link
  • Papi_Property_Number
  • Papi_Property_Post
  • Papi_Property_Radio
  • Papi_Property_Reference
  • Papi_Property_Relationship
  • Papi_Property_Repeater
  • Papi_Property_String
  • Papi_Property_Term
  • Papi_Property_Text
  • Papi_Property_Url
  • Papi_Property_User
  • Papi_Taxonomy_Type
  • Papi_Term_Store

Functions

  • papi
  • papi_action_delete_value
  • papi_append_post_type_query
  • papi_body_class
  • papi_cache_delete
  • papi_cache_get
  • papi_cache_key
  • papi_cache_set
  • papi_camel_case
  • papi_cast_string_value
  • papi_convert_to_string
  • papi_current_user_is_allowed
  • papi_delete_field
  • papi_delete_option
  • papi_delete_property_meta_value
  • papi_delete_term_field
  • papi_display_page_type
  • papi_doing_ajax
  • papi_entry_type_exists
  • papi_esc_html
  • papi_f
  • papi_field_shortcode
  • papi_field_value
  • papi_filter_conditional_rule_allowed
  • papi_filter_format_value
  • papi_filter_load_value
  • papi_filter_settings_directories
  • papi_filter_settings_only_page_type
  • papi_filter_settings_only_taxonomy_type
  • papi_filter_settings_show_page_type
  • papi_filter_settings_show_standard_page_type
  • papi_filter_settings_show_standard_page_type_in_filter
  • papi_filter_settings_show_standard_taxonomy_type
  • papi_filter_settings_sort_order
  • papi_filter_settings_standard_page_type_description
  • papi_filter_settings_standard_page_type_name
  • papi_filter_settings_standard_page_type_thumbnail
  • papi_filter_settings_standard_taxonomy_type_name
  • papi_filter_update_value
  • papi_from_property_array_slugs
  • papi_get_all_core_type_files
  • papi_get_all_entry_types
  • papi_get_all_files_in_directory
  • papi_get_all_page_types
  • papi_get_class_name
  • papi_get_core_type_base_path
  • papi_get_core_type_file_path
  • papi_get_entry_type
  • papi_get_entry_type_by_id
  • papi_get_entry_type_by_meta_id
  • papi_get_entry_type_count
  • papi_get_entry_type_css_class
  • papi_get_entry_type_id
  • papi_get_entry_type_template
  • papi_get_field
  • papi_get_file_path
  • papi_get_meta_id
  • papi_get_meta_id_column
  • papi_get_meta_store
  • papi_get_meta_type
  • papi_get_only_objects
  • papi_get_option
  • papi_get_options_and_properties
  • papi_get_or_post
  • papi_get_page
  • papi_get_page_new_url
  • papi_get_page_type_id
  • papi_get_page_type_key
  • papi_get_page_type_name
  • papi_get_parent_post_id
  • papi_get_post_id
  • papi_get_post_type
  • papi_get_post_type_label
  • papi_get_post_types
  • papi_get_property_class_name
  • papi_get_property_meta_value
  • papi_get_property_type
  • papi_get_property_type_key
  • papi_get_property_type_key_f
  • papi_get_qs
  • papi_get_sanitized_post
  • papi_get_slugs
  • papi_get_taxonomies
  • papi_get_taxonomy
  • papi_get_taxonomy_label
  • papi_get_taxonomy_type_id
  • papi_get_taxonomy_type_name
  • papi_get_template_file_name
  • papi_get_term_field
  • papi_get_term_id
  • papi_get_term_slugs
  • papi_html_name
  • papi_html_tag
  • papi_include_query_strings
  • papi_include_template
  • papi_is_empty
  • papi_is_json
  • papi_is_method
  • papi_is_option_type
  • papi_is_page_type
  • papi_is_property
  • papi_is_property_type_key
  • papi_is_rule
  • papi_load_page_type_id
  • papi_load_taxonomy_type_id
  • papi_maybe_convert_to_array
  • papi_maybe_convert_to_object
  • papi_maybe_get_callable_value
  • papi_maybe_json_decode
  • papi_maybe_json_encode
  • papi_nl2br
  • papi_option_shortcode
  • papi_option_type_exists
  • papi_populate_properties
  • papi_property
  • papi_remove_trailing_quotes
  • papi_render_html_tag
  • papi_render_properties
  • papi_render_property
  • papi_require_text
  • papi_required_html
  • papi_rule
  • papi_santize_data
  • papi_set_page_type_id
  • papi_set_taxonomy_type_id
  • papi_slugify
  • papi_sort_order
  • papi_supports_term_meta
  • papi_tab
  • papi_tabs_setup
  • papi_taxonomy_shortcode
  • papi_template
  • papi_template_include
  • papi_to_array
  • papi_to_property_array_slugs
  • papi_underscorify
  • papi_update_field
  • papi_update_option
  • papi_update_property_meta_value
  • papi_update_property_meta_value_cache_delete
  • papi_update_term_field
  • papify
  • the_papi_field
  • the_papi_option
  • the_papi_page_type_name
  • the_papi_taxonomy_type_name
  • the_papi_term_field
  • unpapify
  1   2   3   4   5   6   7   8   9  10  11  12  13  14  15  16  17  18  19  20  21  22  23  24  25  26  27  28  29  30  31  32  33  34  35  36  37  38  39  40  41  42  43  44  45  46  47  48  49  50  51  52  53  54  55  56  57  58  59  60  61  62  63  64  65  66  67  68  69  70  71  72  73  74  75  76  77  78  79  80  81  82  83  84  85  86  87  88  89  90  91  92  93  94  95  96  97  98  99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 
<?php

/**
 * Get taxonomy type id by term id.
 *
 * @param  int $term_id
 *
 * @return string
 */
function papi_get_taxonomy_type_id( $term_id = 0 ) {
    return papi_get_entry_type_id( $term_id, 'term' );
}

/**
 * Get the taxonomy type name.
 *
 * @param  int $term_id
 *
 * @return string
 */
function papi_get_taxonomy_type_name( $term_id = 0 ) {
    $term_id = papi_get_term_id( $term_id );

    if ( empty( $term_id ) ) {
        return '';
    }

    $entry_type_id = papi_get_taxonomy_type_id( $term_id );

    if ( empty( $entry_type_id ) ) {
        return '';
    }

    $entry_type = papi_get_entry_type_by_id( $entry_type_id );

    if ( empty( $entry_type ) ) {
        return '';
    }

    return $entry_type->name;
}

/**
 * Load the entry type id on a taxonomy.
 *
 * @param  string $entry_type_id
 * @param  string $type
 *
 * @return string
 */
function papi_load_taxonomy_type_id( $entry_type_id = '', $type = 'term' ) {
    if ( $type !== 'term' ) {
        return $entry_type_id;
    }

    $key      = papi_get_page_type_key();
    $term_id  = papi_get_term_id();
    $taxonomy = papi_get_taxonomy( $term_id );

    // Try to load the entry type id from only taxonomy type filter.
    if ( empty( $entry_type_id ) ) {
        $entry_type_id = papi_filter_settings_only_taxonomy_type( $taxonomy );
    }

    // If we have a term id we can load the entry type id from the term.
    if ( empty( $entry_type_id ) && $term_id > 0 && papi_supports_term_meta() ) {
        $meta_value    = get_term_meta( $term_id, $key, true );
        $entry_type_id = empty( $meta_value ) ? '' : $meta_value;
    }

    // Load entry type id from the container if it exists.
    if ( empty( $entry_type_id ) ) {
        $key = sprintf( 'entry_type_id.taxonomy.%s', $taxonomy );

        if ( papi()->exists( $key )  ) {
            return papi()->make( $key );
        }
    }

    return $entry_type_id;
}

add_filter( 'papi/entry_type_id', 'papi_load_taxonomy_type_id', 10, 2 );

/**
 * Get all taxonomies Papi should work with.
 *
 * @return array
 */
function papi_get_taxonomies() {
    $taxonomies  = [];
    $entry_types = papi_get_all_entry_types( [
        'types' => 'taxonomy'
    ] );

    foreach ( $entry_types as $entry_type ) {
        $taxonomies = array_merge( $taxonomies, papi_to_array( $entry_type->taxonomy ) );
    }

    return array_unique( $taxonomies );
}

/**
 * Set taxonomy type to a term.
 *
 * @param  mixed  $term_id
 * @param  string $taxonomy_type
 *
 * @return bool
 */
function papi_set_taxonomy_type_id( $term_id, $taxonomy_type ) {
    if ( papi_entry_type_exists( $taxonomy_type ) ) {
        return update_term_meta( papi_get_term_id( $term_id ), papi_get_page_type_key(), $taxonomy_type );
    }

    return false;
}

/**
 * Echo the taxonomy type name.
 *
 * @param  int $term_id
 *
 * @return string
 */
function the_papi_taxonomy_type_name( $term_id = 0 ) {
    echo papi_get_taxonomy_type_name( $term_id );
}
API documentation generated by ApiGen