# taskbuilder/6.0.6/includes/admin/settings/wppm_search_wp_pages.php

Taskbuilder – Project Management &amp; Task Management Tool With Kanban Board, version 6.0.6. 31 lines.

- Page: https://pluginprobe.com/plugins/taskbuilder/6.0.6/code/includes/admin/settings/wppm_search_wp_pages.php
- Raw: https://pluginprobe.com/plugins/taskbuilder/6.0.6/raw/includes/admin/settings/wppm_search_wp_pages.php
- Modified: 2026-08-26T12:08:58+00:00

Line numbers below start at 1. Link to a line or a range by appending a fragment to the
page URL, for example `https://pluginprobe.com/plugins/taskbuilder/6.0.6/code/includes/admin/settings/wppm_search_wp_pages.php#L10-L20`.

```php
<?php
if ( ! defined( 'ABSPATH' ) ) {
  exit; // Exit if accessed directly
}

global $current_user,$wpdb,$wppmfunction;
if (!($current_user->ID && $current_user->has_cap('manage_options') || ($current_user->ID && $current_user->has_cap('wppm_admin')))) {
	exit;
}
if ( check_ajax_referer( 'wppm_search_wp_pages', '_ajax_nonce', false ) != 1 ) {
  wp_send_json_error( 'Unauthorised request!', 401 );
}

$term = isset( $_GET['q'] ) ? sanitize_text_field( wp_unslash( $_GET['q'] ) ) : '';

$args = array(
    'post_type'         => 'page',
    'post_status'       => 'publish',
    'orderby'           => array( 'title' => 'ASC' ),
    'search_wpsc_title' => $term,
);
$query = new WP_Query( $args );

$response = array();
foreach ( $query->posts as $page ) {
    $response[] = array(
        'id'    => $page->ID,
        'title' => $page->post_title,
    );
}
wp_send_json( $response );
```
