Server IP : 15.235.198.142 / Your IP : 216.73.216.155 Web Server : Apache/2.4.58 (Ubuntu) System : Linux ballsack 6.8.0-45-generic #45-Ubuntu SMP PREEMPT_DYNAMIC Fri Aug 30 12:02:04 UTC 2024 x86_64 User : www-data ( 33) PHP Version : 8.3.6 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /var/www/yme/wp-content/plugins/elementor-pro/modules/query-control/controls/ |
Upload File : |
<?php namespace ElementorPro\Modules\QueryControl\Controls; use Elementor\Control_Select2; use ElementorPro\Modules\QueryControl\Module; if ( ! defined( 'ABSPATH' ) ) { exit; // Exit if accessed directly } class Query extends Control_Select2 { public function get_type() { return 'query'; } /** * 'query' can be used for passing query args in the structure and format used by WP_Query. * @return array */ protected function get_default_settings() { return array_merge( parent::get_default_settings(), [ 'query' => '', ] ); } /** * Update control settings using mapping config * * @param $value * @param array $control_args * @param array $config * * @return mixed */ public function on_import_update_settings( $value, array $control_args, array $config ) { switch ( $control_args['autocomplete']['object'] ) { case Module::QUERY_OBJECT_POST: case Module::QUERY_OBJECT_LIBRARY_TEMPLATE: return $this->replace_id_from_mapping( $value, $config['post_ids'] ); case Module::QUERY_OBJECT_TAX: return $this->replace_id_from_mapping( $value, $config['term_ids'] ); default: return $value; } } /** * replace id from config * * @param mixed $value * @param array $mapping * * @return string */ private function replace_id_from_mapping( $value, array $mapping ): string { return $mapping[ $value ] ?? $value; } }