| Server IP : 104.21.28.229 / Your IP : 216.73.216.142 Web Server : Apache/2 System : Linux hosting8537.lvs 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64 User : mienphi ( 1014) PHP Version : 8.2.14 Disable Function : exec,system,passthru,shell_exec,proc_close,proc_open,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /home/mienphi/public_html/wp-content/plugins/learnpress/inc/abstracts/ |
Upload File : |
<?php
/**
* Class LP_Object_Query
*
* Base class for query functionality on post type object.
*
* @since 3.3.0
*/
abstract class LP_Object_Query {
/**
* @var array
*/
protected $query_vars = array();
/**
* LP_Object_Query constructor.
*
* @param array $args
*/
public function __construct( $args = array() ) {
$this->query_vars = wp_parse_args( $args, $this->get_default_query_vars() );
}
/**
* Get all query vars.
*
* @return array
* @since 3.3.0
*/
public function get_query_vars() {
return $this->query_vars;
}
/**
* Get value of a query var by key.
*
* @param string $var_name
* @param string $default
*
* @return mixed|string
* @since 3.3.0
*/
public function get( $var_name, $default = '' ) {
if ( isset( $this->query_vars[ $var_name ] ) ) {
return $this->query_vars[ $var_name ];
}
return $default;
}
/**
* Set new value for query var.
*
* @param string $var_name
* @param mixed $value
* @param bool $overwrite
*
* @since 3.3.0
*/
public function set( $var_name, $value, $overwrite = false ) {
if ( $overwrite || ! isset( $this->query_vars[ $var_name ] ) ) {
$this->query_vars[ $var_name ] = $value;
}
}
/**
* Get default query vars.
*
* @return array
* @since 3.3.0
*/
protected function get_default_query_vars() {
return array(
'name' => '',
'parent' => '',
'parent_exclude' => '',
'exclude' => '',
'limit' => get_option( 'posts_per_page' ),
'paged' => 1,
'offset' => '',
'paginate' => false,
'order' => 'DESC',
'orderby' => 'date',
'return' => 'objects',
);
}
}