Warning: Undefined array key "yPBFjS" in /home/ic3/domains/ic3.info/public_html/wp-includes/kses.php on line 1
HEX
HEX
Server: LiteSpeed
System: Linux control5.webnow.vn 4.18.0-553.83.1.lve.el8.x86_64 #1 SMP Wed Nov 12 10:04:12 UTC 2025 x86_64
User: ic3 (1169)
PHP: 8.2.29
Disabled: NONE
Upload Files
File: /home/ic3/public_html/wp-content/themes/flatsome/inc/builder/core/server/src/Ajax/Terms.php
<?php

namespace UxBuilder\Ajax;

class Terms {

  public function get_terms() {
    $post_id = array_key_exists( 'id', $_GET ) ? intval( $_GET['id'] ) : array();
    $term_ids = array_key_exists( 'values', $_GET ) ? flatsome_clean( $_GET['values'] ) : array();
    $option = array_key_exists( 'option', $_GET ) ? flatsome_clean( $_GET['option'] ) : array();

    // Return an error if nonce is invalid.
    check_ajax_referer( 'ux-builder-' . $post_id, 'security' );

    // Make sure ids are an array.
    if ( is_string( $term_ids ) ) {
      $term_ids = array( $term_ids );
    }

    // Make sure no empty ids are provided.
    $term_ids = array_filter( $term_ids, function ($value) {
      return $value != '';
    } );

    // Return an error if no term ids are provided.
    if ( empty( $term_ids ) ) {
      return wp_send_json_success( array() );
    }

    $terms = get_terms( $option['taxonomies'], array(
      'include' => is_array( $term_ids ) ? $term_ids : array( $term_ids ),
      'hide_empty' => false,
      'orderby' => 'include',
    ) );

    $items = array_map( function ($term) {
      return array(
        'id' => $term->term_id,
        'title' => $term->name,
      );
    }, $terms );

    wp_send_json_success( $items );
  }

  public function search_terms() {
    $query = array_key_exists( 'query', $_GET ) ? sanitize_text_field( $_GET['query'] ) : array();
    $option = array_key_exists( 'option', $_GET ) ? flatsome_clean( $_GET['option'] ) : array();

    $terms = get_terms( $option['taxonomies'], array(
      'number' => 25,
      'search' => $query,
      'hide_empty' => false,
    ) );

    $items = array_map( function ($term) {
      return array(
        'id' => $term->term_id,
        'title' => $term->name,
      );
    }, $terms );

    wp_send_json_success( $items );
  }
}