Semi working conditions for the new ui
This commit is contained in:
@@ -47,6 +47,8 @@ class Partnerexpo_Core_Public {
|
||||
public function searchbox_shortcode() {
|
||||
wp_enqueue_style( $this->plugin_name . '-searchbox-css' );
|
||||
wp_enqueue_script( $this->plugin_name . '-searchbox-js' );
|
||||
wp_enqueue_style( $this->plugin_name . '-multiselect-css' );
|
||||
wp_enqueue_script( $this->plugin_name . '-multiselect-js' );
|
||||
|
||||
ob_start();
|
||||
include plugin_dir_path( __FILE__ ) . 'partials/partnerexpo-core-public-searchbox.php';
|
||||
@@ -62,12 +64,44 @@ class Partnerexpo_Core_Public {
|
||||
}
|
||||
|
||||
function query_partners(WP_REST_Request $request) {
|
||||
$params = $request->get_query_params();
|
||||
|
||||
if (isset($params['force_tags']) && isset($params['tags']) && $params['force_tags'] === 'true') {
|
||||
$params['tags'] = str_replace(',', '+', $params['tags']);
|
||||
}
|
||||
|
||||
$args = [
|
||||
'post_type' => 'pexpo_partners',
|
||||
'posts_per_page' => 15,
|
||||
'posts_per_page' => $params['resultsPerPage'] ?? 10,
|
||||
'paged' => $params['page'] ?? 1,
|
||||
'post_status' => 'publish',
|
||||
's' => $params['q'] ?? '',
|
||||
'pexpo_tags' => $params['tags'] ?? '',
|
||||
];
|
||||
|
||||
switch ($params['sort'] ?? 'relevance') {
|
||||
case 'date_asc':
|
||||
$args['orderby'] = 'date';
|
||||
$args['order'] = 'ASC';
|
||||
break;
|
||||
case 'date_desc':
|
||||
$args['orderby'] = 'date';
|
||||
$args['order'] = 'DESC';
|
||||
break;
|
||||
case 'title_asc':
|
||||
$args['orderby'] = 'title';
|
||||
$args['order'] = 'ASC';
|
||||
break;
|
||||
case 'title_desc':
|
||||
$args['orderby'] = 'title';
|
||||
$args['order'] = 'DESC';
|
||||
break;
|
||||
case 'relevance':
|
||||
default:
|
||||
// Default WordPress search sorting
|
||||
break;
|
||||
}
|
||||
|
||||
$query = new WP_Query($args);
|
||||
|
||||
$posts = [];
|
||||
@@ -83,6 +117,7 @@ class Partnerexpo_Core_Public {
|
||||
'date' => date('Y-m-d', strtotime($post->post_date)),
|
||||
'tag' => $tags ?? null,
|
||||
'url' => get_permalink($post),
|
||||
'order' => $params['sort'] ?? 'relevance',
|
||||
];
|
||||
}
|
||||
|
||||
@@ -96,7 +131,7 @@ class Partnerexpo_Core_Public {
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public function enqueue_styles() {
|
||||
public function register_styles() {
|
||||
wp_register_style(
|
||||
$this->plugin_name . '-searchbox-css',
|
||||
plugin_dir_url( __FILE__ ) . 'css/searchbox.css',
|
||||
@@ -104,6 +139,14 @@ class Partnerexpo_Core_Public {
|
||||
$this->version,
|
||||
'all'
|
||||
);
|
||||
|
||||
wp_register_style(
|
||||
$this->plugin_name . '-multiselect-css',
|
||||
plugin_dir_url( __FILE__ ) . 'css/multiselect.css',
|
||||
[],
|
||||
$this->version,
|
||||
'all'
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -111,7 +154,7 @@ class Partnerexpo_Core_Public {
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public function enqueue_scripts() {
|
||||
public function register_scripts() {
|
||||
wp_register_script(
|
||||
$this->plugin_name . '-searchbox-js',
|
||||
plugin_dir_url( __FILE__ ) . 'js/searchbox.js',
|
||||
@@ -119,6 +162,14 @@ class Partnerexpo_Core_Public {
|
||||
$this->version,
|
||||
true
|
||||
);
|
||||
|
||||
wp_register_script(
|
||||
$this->plugin_name . '-multiselect-js',
|
||||
plugin_dir_url( __FILE__ ) . 'js/multiselect.js',
|
||||
[],
|
||||
$this->version,
|
||||
true
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user