ID); $role = $userData->roles; foreach ($role as $value) { $output[] = array( 'link' => $url, 'title' => $userData->display_name, 'status' => $value, 'info' => $userData->user_registered, 'image' => esc_url(get_avatar_url($userData->ID)), 'type' => 'User' ); } return $output; } function aaskp_search_page_callback() { $selectedKeyword = (isset($_GET['keyword'])) ? sanitize_text_field($_GET['keyword']) : ''; $selectedFilter = (isset($_GET['select'])) ? sanitize_text_field($_GET['select']) : ''; $selectedStatus = (isset($_GET['status'])) ? sanitize_text_field($_GET['status']) : ''; $selectedUser = (isset($_GET['user'])) ? sanitize_text_field($_GET['user']) : ''; $selectedMetaKey = (isset($_GET['metaKey'])) ? sanitize_text_field($_GET['metaKey']) : ''; $selectedMetaVal = (isset($_GET['metaValue'])) ? sanitize_text_field($_GET['metaValue']) : ''; $selectedMatchType = (isset($_GET['matchType'])) ? sanitize_text_field($_GET['matchType']) : ''; ?>

Search Filters:


true)); $post_types = array_values($post_types); // get pre search results from hook if(!empty($filters['user'])){ $user=$filters['user']; $pre_filtered_result = apply_filters('aaskp_pre_search', $user); if (is_array($pre_filtered_result)) { $results = array_merge($results, $pre_filtered_result); } } $object = searchclass::getInstance(); switch($filters['select']) { case "Users": $results=array_merge( $results, $object->AASKP_getUsers($postSearch,$filters,true) ); break; case "PostsAndPages": $results=array_merge( $results, $object->AASKP_getPostsAndPages($postSearch,$filters,true) ); break; case "Media": $results=array_merge( $results, $object->AASKP_getMedia($postSearch,$filters,true) ); break; case "Taxonomies": $results=array_merge( $results, $object->AASKP_getTaxonomies($postSearch,$filters,true) ); break; case "PostMeta": $results=array_merge( $results, $object->AASKP_getPostMeta($postSearch,$filters,true) ); break; case "Comments": $results=array_merge( $results, $object->AASKP_getComments($postSearch,$filters,true) ); break; case "All": case 0: $results = array_merge( $results, // pre search $object->AASKP_getUsers($postSearch,$filters,true), // user results $object->AASKP_getPostsAndPages($postSearch,$filters,true), // post types $object->AASKP_getMedia($postSearch,$filters,true), // attachments $object->AASKP_getTaxonomies($postSearch,$filters,true), // taxonomies $object->AASKP_getPostMeta($postSearch,$filters,true), // post meta $object->AASKP_getComments($postSearch,$filters,true) // comments ); } $post_filtered_result = apply_filters('aaskp_post_search', $postSearch); if (is_array($post_filtered_result)) { $results = array_merge($results, $post_filtered_result); } $numPerPage=10; $numPages = ceil(count($results)/$numPerPage); if (isset($_GET['offset'])) { if(!empty($_GET['offset'])) { $offset=sanitize_text_field($_GET['offset']); } else { $offset=1; } } else { $offset=1; } $start=($offset-1)*$numPerPage; $end=min(($offset*$numPerPage),count($results)); if(count($results) > 1){ echo '

Total '.count($results).' Search Results Found

'; }elseif(count($results) == 0){ echo '

Total '.count($results).' Search Result Found.

'; } else{ echo '

Total '.count($results).' Search Result Found

'; } echo ""; if(count($results)==0){ //no results found echo ""; }else{ //display the found results echo ""; for($i=$start;$i<$end;$i++){ $values=$results[$i]; if(array_key_exists("status",$values)){ $status = $values['status']; } else { $status="[NO STATUS]"; } $title = $values['title']; $link = $values['link']; $link='"'.$link.'"'; $info = $values['info']; $types=$values['type']; $image = ''; if(array_key_exists("image",$values)){ $image = $values['image']; $images = ""; }else{ $images="[NO IMAGE]"; } if($status=="administrator") { $status="admin"; } if($title ==''){ $title="No title"; } switch($types) { case "User": $type = ""; break; case "Post": $type = ""; break; case "Media": $type = ""; break; case "Taxonomy": $type = ""; break; case "PostMeta": $type = ""; break; case "Comment": $type = ""; break; } echo ""; } echo "
Please refine your search
TypeThumbnailTitleStatusInfo
".$type."".$images."

".$title."

".$status."

".$info."

"; $adminUrl= get_admin_url(); $url=$adminUrl."tools.php?page=advanced-admin-search&keyword=".$postSearch."&select=".$filters['select']."&status=".$filters['status']."&user=".$filters['user']."&metaKey=".$filters['metaKey']."&metaValue=".$filters['metaValue']."&matchType=".$filters['matchType']; //pagination for results found createPagination($url,$offset,$numPages); } } } } function createPagination($url,$offset,$numPages) { $previousPage = $offset - 1; $nextPage = $offset + 1; $secondLast=$numPages-1; if($numPages>1) { echo "
"; } } ?>