11

I've used a custom post type for one of my website. Custom post type contains scratch card data along with some custom fields.

I've developed an android application to manage those items from android device.

In the android app, I want to keep search feature which will help admin users to search card numbers to manage those.

I can use wordpress query to search by title.

Code
$args = array("post_type" => "mytype", "name" => $title);
$query = get_posts( $args );

It can only provide result if I provide exact title. But I need to retrieve all items with similar title.

Any suggestion?

  • Instead of using get_posts() you can use the default search query of WordPress which will provide you the results of the searched term. It will also provide all the matching results with all your search terms. – Rohit Pande Feb 11 '13 at 10:44
22

You can use either search parameter of wp_query :

Code
$args = array("post_type" => "mytype", "s" => $title);
$query = get_posts( $args );

Or you can get posts based on title throught wpdb class:

global $wpdb;
$myposts = $wpdb->get_results( $wpdb->prepare("SELECT * FROM $wpdb->posts WHERE post_title LIKE '%s'", '%'. $wpdb->esc_like( $title ) .'%') );

Than you'll get post object in this form:

foreach ( $myposts as $mypost ) 
{
    $post = get_post( $mypost );
    //run your output code here
}
| improve this answer | |
  • Is this working in 2019? – Naren Verma Dec 12 '19 at 18:58
  • Note that using s in get_posts will search more than just the title though... it also searches the content. – FluffyKitten Jul 11 at 15:48

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.