query_vars[$query_var] ) ) return $this->query_vars[$query_var]; return ''; } /** * Set query variable. * * @since 3.1.0 * @access public * * @param string $query_var Query variable key. * @param mixed $value Query variable value. */ function set( $query_var, $value ) { $this->query_vars[ $query_var ] = $value; } /* * Populates the $meta_query property * * @access protected * @since 3.1.0 * * @param array $qv The query variables */ function parse_meta_query( &$qv ) { $meta_query = array(); // Simple query needs to be first for orderby=meta_value to work correctly foreach ( array( 'key', 'value', 'compare', 'type' ) as $key ) { if ( !empty( $qv[ "meta_$key" ] ) ) $meta_query[0][ $key ] = $qv[ "meta_$key" ]; } if ( !empty( $qv['meta_query'] ) && is_array( $qv['meta_query'] ) ) { $meta_query = array_merge( $meta_query, $qv['meta_query'] ); } $qv['meta_query'] = $meta_query; } /* * Used internally to generate an SQL string for searching across multiple columns * * @access protected * @since 3.1.0 * * @param string $string * @param array $cols * @param bool $wild Whether to allow trailing wildcard searches. Default is false. * @return string */ function get_search_sql( $string, $cols, $wild = false ) { $string = esc_sql( $string ); $searches = array(); $wild_char = ( $wild ) ? '%' : ''; foreach ( $cols as $col ) { if ( 'ID' == $col ) $searches[] = "$col = '$string'"; else $searches[] = "$col LIKE '$string$wild_char'"; } return ' AND (' . implode(' OR ', $searches) . ')'; } } ?>