{"pageProps":{"title":"wp_ajax_find_posts()","titleType":"Function","type":"functions","content":"

wp_ajax_find_posts() WordPress Function

The wp_ajax_find_posts() function is used to search for posts and return them as a JSON object. This function is used by the WordPress admin to search for posts when adding a new post.

wp_ajax_find_posts() #

Ajax handler for querying posts for the Find Posts modal.


Description

Top ↑

See also


Top ↑

Source

File: wp-admin/includes/ajax-actions.php

function wp_ajax_find_posts() {\n\tcheck_ajax_referer( 'find-posts' );\n\n\t$post_types = get_post_types( array( 'public' => true ), 'objects' );\n\tunset( $post_types['attachment'] );\n\n\t$s    = wp_unslash( $_POST['ps'] );\n\t$args = array(\n\t\t'post_type'      => array_keys( $post_types ),\n\t\t'post_status'    => 'any',\n\t\t'posts_per_page' => 50,\n\t);\n\n\tif ( '' !== $s ) {\n\t\t$args['s'] = $s;\n\t}\n\n\t$posts = get_posts( $args );\n\n\tif ( ! $posts ) {\n\t\twp_send_json_error( __( 'No items found.' ) );\n\t}\n\n\t$html = '<table class="widefat"><thead><tr><th class="found-radio"><br /></th><th>' . __( 'Title' ) . '</th><th class="no-break">' . __( 'Type' ) . '</th><th class="no-break">' . __( 'Date' ) . '</th><th class="no-break">' . __( 'Status' ) . '</th></tr></thead><tbody>';\n\t$alt  = '';\n\tforeach ( $posts as $post ) {\n\t\t$title = trim( $post->post_title ) ? $post->post_title : __( '(no title)' );\n\t\t$alt   = ( 'alternate' === $alt ) ? '' : 'alternate';\n\n\t\tswitch ( $post->post_status ) {\n\t\t\tcase 'publish':\n\t\t\tcase 'private':\n\t\t\t\t$stat = __( 'Published' );\n\t\t\t\tbreak;\n\t\t\tcase 'future':\n\t\t\t\t$stat = __( 'Scheduled' );\n\t\t\t\tbreak;\n\t\t\tcase 'pending':\n\t\t\t\t$stat = __( 'Pending Review' );\n\t\t\t\tbreak;\n\t\t\tcase 'draft':\n\t\t\t\t$stat = __( 'Draft' );\n\t\t\t\tbreak;\n\t\t}\n\n\t\tif ( '0000-00-00 00:00:00' === $post->post_date ) {\n\t\t\t$time = '';\n\t\t} else {\n\t\t\t/* translators: Date format in table columns, see https://www.php.net/manual/datetime.format.php */\n\t\t\t$time = mysql2date( __( 'Y/m/d' ), $post->post_date );\n\t\t}\n\n\t\t$html .= '<tr class="' . trim( 'found-posts ' . $alt ) . '"><td class="found-radio"><input type="radio" id="found-' . $post->ID . '" name="found_post_id" value="' . esc_attr( $post->ID ) . '"></td>';\n\t\t$html .= '<td><label for="found-' . $post->ID . '">' . esc_html( $title ) . '</label></td><td class="no-break">' . esc_html( $post_types[ $post->post_type ]->labels->singular_name ) . '</td><td class="no-break">' . esc_html( $time ) . '</td><td class="no-break">' . esc_html( $stat ) . ' </td></tr>' . "\\n\\n";\n\t}\n\n\t$html .= '</tbody></table>';\n\n\twp_send_json_success( $html );\n}\n

Expand full source codeCollapse full source codeView on TracView on GitHub


Top ↑

Related

Top ↑

Uses

Uses
UsesDescription
wp-includes/l10n.php:__()

Retrieve the translation of $text.

wp-includes/formatting.php:wp_unslash()

Removes slashes from a string or recursively removes slashes from strings within an array.

wp-includes/formatting.php:esc_attr()

Escaping for HTML attributes.

wp-includes/formatting.php:esc_html()

Escaping for HTML blocks.

wp-includes/pluggable.php:check_ajax_referer()

Verifies the Ajax request to prevent processing requests external of the blog.

wp-includes/functions.php:wp_send_json_error()

Send a JSON response back to an Ajax request, indicating failure.

wp-includes/functions.php:wp_send_json_success()

Send a JSON response back to an Ajax request, indicating success.

wp-includes/functions.php:mysql2date()

Convert given MySQL date string into a different format.

wp-includes/post.php:get_posts()

Retrieves an array of the latest posts, or posts matching the given criteria.

wp-includes/post.php:get_post_types()

Get a list of all registered post type objects.

Show 5 more usesHide more uses

Top ↑

Changelog

Changelog
VersionDescription
3.1.0Introduced.
","description":"Ajax handler for querying posts for the Find Posts modal.","sidebarFiles":{"Function":[{"componentTitle":"wp_ajax_add_link_category()","componentLink":"/reference/functions/wp_ajax_add_link_category","private":"","deprecated":""},{"componentTitle":"wp_ajax_add_menu_item()","componentLink":"/reference/functions/wp_ajax_add_menu_item","private":"","deprecated":""},{"componentTitle":"wp_ajax_add_meta()","componentLink":"/reference/functions/wp_ajax_add_meta","private":"","deprecated":""},{"componentTitle":"wp_ajax_add_tag()","componentLink":"/reference/functions/wp_ajax_add_tag","private":"","deprecated":""},{"componentTitle":"wp_ajax_add_user()","componentLink":"/reference/functions/wp_ajax_add_user","private":"","deprecated":""},{"componentTitle":"wp_ajax_ajax_tag_search()","componentLink":"/reference/functions/wp_ajax_ajax_tag_search","private":"","deprecated":""},{"componentTitle":"wp_ajax_autocomplete_user()","componentLink":"/reference/functions/wp_ajax_autocomplete_user","private":"","deprecated":""},{"componentTitle":"wp_ajax_closed_postboxes()","componentLink":"/reference/functions/wp_ajax_closed_postboxes","private":"","deprecated":""},{"componentTitle":"wp_ajax_crop_image()","componentLink":"/reference/functions/wp_ajax_crop_image","private":"","deprecated":""},{"componentTitle":"wp_ajax_dashboard_widgets()","componentLink":"/reference/functions/wp_ajax_dashboard_widgets","private":"","deprecated":""},{"componentTitle":"wp_ajax_date_format()","componentLink":"/reference/functions/wp_ajax_date_format","private":"","deprecated":""},{"componentTitle":"wp_ajax_delete_comment()","componentLink":"/reference/functions/wp_ajax_delete_comment","private":"","deprecated":""},{"componentTitle":"wp_ajax_delete_inactive_widgets()","componentLink":"/reference/functions/wp_ajax_delete_inactive_widgets","private":"","deprecated":""},{"componentTitle":"wp_ajax_delete_link()","componentLink":"/reference/functions/wp_ajax_delete_link","private":"","deprecated":""},{"componentTitle":"wp_ajax_delete_meta()","componentLink":"/reference/functions/wp_ajax_delete_meta","private":"","deprecated":""},{"componentTitle":"wp_ajax_delete_page()","componentLink":"/reference/functions/wp_ajax_delete_page","private":"","deprecated":""},{"componentTitle":"wp_ajax_delete_plugin()","componentLink":"/reference/functions/wp_ajax_delete_plugin","private":"","deprecated":""},{"componentTitle":"wp_ajax_delete_post()","componentLink":"/reference/functions/wp_ajax_delete_post","private":"","deprecated":""},{"componentTitle":"wp_ajax_delete_tag()","componentLink":"/reference/functions/wp_ajax_delete_tag","private":"","deprecated":""},{"componentTitle":"wp_ajax_delete_theme()","componentLink":"/reference/functions/wp_ajax_delete_theme","private":"","deprecated":""},{"componentTitle":"wp_ajax_destroy_sessions()","componentLink":"/reference/functions/wp_ajax_destroy_sessions","private":"","deprecated":""},{"componentTitle":"wp_ajax_dim_comment()","componentLink":"/reference/functions/wp_ajax_dim_comment","private":"","deprecated":""},{"componentTitle":"wp_ajax_dismiss_wp_pointer()","componentLink":"/reference/functions/wp_ajax_dismiss_wp_pointer","private":"","deprecated":""},{"componentTitle":"wp_ajax_edit_comment()","componentLink":"/reference/functions/wp_ajax_edit_comment","private":"","deprecated":""},{"componentTitle":"wp_ajax_edit_theme_plugin_file()","componentLink":"/reference/functions/wp_ajax_edit_theme_plugin_file","private":"","deprecated":""},{"componentTitle":"wp_ajax_fetch_list()","componentLink":"/reference/functions/wp_ajax_fetch_list","private":"","deprecated":""},{"componentTitle":"wp_ajax_find_posts()","componentLink":"/reference/functions/wp_ajax_find_posts","private":"","deprecated":"","active":"active"},{"componentTitle":"wp_ajax_generate_password()","componentLink":"/reference/functions/wp_ajax_generate_password","private":"","deprecated":""},{"componentTitle":"wp_ajax_get_attachment()","componentLink":"/reference/functions/wp_ajax_get_attachment","private":"","deprecated":""},{"componentTitle":"wp_ajax_get_comments()","componentLink":"/reference/functions/wp_ajax_get_comments","private":"","deprecated":""},{"componentTitle":"wp_ajax_get_community_events()","componentLink":"/reference/functions/wp_ajax_get_community_events","private":"","deprecated":""},{"componentTitle":"wp_ajax_get_permalink()","componentLink":"/reference/functions/wp_ajax_get_permalink","private":"","deprecated":""},{"componentTitle":"wp_ajax_get_post_thumbnail_html()","componentLink":"/reference/functions/wp_ajax_get_post_thumbnail_html","private":"","deprecated":""},{"componentTitle":"wp_ajax_get_revision_diffs()","componentLink":"/reference/functions/wp_ajax_get_revision_diffs","private":"","deprecated":""},{"componentTitle":"wp_ajax_get_tagcloud()","componentLink":"/reference/functions/wp_ajax_get_tagcloud","private":"","deprecated":""},{"componentTitle":"wp_ajax_health_check_background_updates()","componentLink":"/reference/functions/wp_ajax_health_check_background_updates","private":"","deprecated":"deprecated"},{"componentTitle":"wp_ajax_health_check_dotorg_communication()","componentLink":"/reference/functions/wp_ajax_health_check_dotorg_communication","private":"","deprecated":"deprecated"},{"componentTitle":"wp_ajax_health_check_get_sizes()","componentLink":"/reference/functions/wp_ajax_health_check_get_sizes","private":"","deprecated":"deprecated"},{"componentTitle":"wp_ajax_health_check_loopback_requests()","componentLink":"/reference/functions/wp_ajax_health_check_loopback_requests","private":"","deprecated":"deprecated"},{"componentTitle":"wp_ajax_health_check_site_status_result()","componentLink":"/reference/functions/wp_ajax_health_check_site_status_result","private":"","deprecated":""},{"componentTitle":"wp_ajax_heartbeat()","componentLink":"/reference/functions/wp_ajax_heartbeat","private":"","deprecated":""},{"componentTitle":"wp_ajax_hidden_columns()","componentLink":"/reference/functions/wp_ajax_hidden_columns","private":"","deprecated":""},{"componentTitle":"wp_ajax_image_editor()","componentLink":"/reference/functions/wp_ajax_image_editor","private":"","deprecated":""},{"componentTitle":"wp_ajax_imgedit_preview()","componentLink":"/reference/functions/wp_ajax_imgedit_preview","private":"","deprecated":""},{"componentTitle":"wp_ajax_inline_save_tax()","componentLink":"/reference/functions/wp_ajax_inline_save_tax","private":"","deprecated":""},{"componentTitle":"wp_ajax_inline_save()","componentLink":"/reference/functions/wp_ajax_inline_save","private":"","deprecated":""},{"componentTitle":"wp_ajax_install_plugin()","componentLink":"/reference/functions/wp_ajax_install_plugin","private":"","deprecated":""},{"componentTitle":"wp_ajax_install_theme()","componentLink":"/reference/functions/wp_ajax_install_theme","private":"","deprecated":""},{"componentTitle":"wp_ajax_logged_in()","componentLink":"/reference/functions/wp_ajax_logged_in","private":"","deprecated":""},{"componentTitle":"wp_ajax_media_create_image_subsizes()","componentLink":"/reference/functions/wp_ajax_media_create_image_subsizes","private":"","deprecated":""},{"componentTitle":"wp_ajax_menu_get_metabox()","componentLink":"/reference/functions/wp_ajax_menu_get_metabox","private":"","deprecated":""},{"componentTitle":"wp_ajax_menu_locations_save()","componentLink":"/reference/functions/wp_ajax_menu_locations_save","private":"","deprecated":""},{"componentTitle":"wp_ajax_menu_quick_search()","componentLink":"/reference/functions/wp_ajax_menu_quick_search","private":"","deprecated":""},{"componentTitle":"wp_ajax_meta_box_order()","componentLink":"/reference/functions/wp_ajax_meta_box_order","private":"","deprecated":""},{"componentTitle":"wp_ajax_nopriv_generate_password()","componentLink":"/reference/functions/wp_ajax_nopriv_generate_password","private":"","deprecated":""},{"componentTitle":"wp_ajax_nopriv_heartbeat()","componentLink":"/reference/functions/wp_ajax_nopriv_heartbeat","private":"","deprecated":""},{"componentTitle":"wp_ajax_oembed_cache()","componentLink":"/reference/functions/wp_ajax_oembed_cache","private":"","deprecated":""},{"componentTitle":"wp_ajax_parse_embed()","componentLink":"/reference/functions/wp_ajax_parse_embed","private":"","deprecated":""},{"componentTitle":"wp_ajax_parse_media_shortcode()","componentLink":"/reference/functions/wp_ajax_parse_media_shortcode","private":"","deprecated":""},{"componentTitle":"wp_ajax_query_attachments()","componentLink":"/reference/functions/wp_ajax_query_attachments","private":"","deprecated":""},{"componentTitle":"wp_ajax_query_themes()","componentLink":"/reference/functions/wp_ajax_query_themes","private":"","deprecated":""},{"componentTitle":"wp_ajax_replyto_comment()","componentLink":"/reference/functions/wp_ajax_replyto_comment","private":"","deprecated":""},{"componentTitle":"wp_ajax_rest_nonce()","componentLink":"/reference/functions/wp_ajax_rest_nonce","private":"","deprecated":""},{"componentTitle":"wp_ajax_sample_permalink()","componentLink":"/reference/functions/wp_ajax_sample_permalink","private":"","deprecated":""},{"componentTitle":"wp_ajax_save_attachment_compat()","componentLink":"/reference/functions/wp_ajax_save_attachment_compat","private":"","deprecated":""},{"componentTitle":"wp_ajax_save_attachment_order()","componentLink":"/reference/functions/wp_ajax_save_attachment_order","private":"","deprecated":""},{"componentTitle":"wp_ajax_save_attachment()","componentLink":"/reference/functions/wp_ajax_save_attachment","private":"","deprecated":""},{"componentTitle":"wp_ajax_save_user_color_scheme()","componentLink":"/reference/functions/wp_ajax_save_user_color_scheme","private":"","deprecated":""},{"componentTitle":"wp_ajax_save_widget()","componentLink":"/reference/functions/wp_ajax_save_widget","private":"","deprecated":""},{"componentTitle":"wp_ajax_save_wporg_username()","componentLink":"/reference/functions/wp_ajax_save_wporg_username","private":"","deprecated":""},{"componentTitle":"wp_ajax_search_install_plugins()","componentLink":"/reference/functions/wp_ajax_search_install_plugins","private":"","deprecated":""},{"componentTitle":"wp_ajax_search_plugins()","componentLink":"/reference/functions/wp_ajax_search_plugins","private":"","deprecated":""},{"componentTitle":"wp_ajax_send_attachment_to_editor()","componentLink":"/reference/functions/wp_ajax_send_attachment_to_editor","private":"","deprecated":""},{"componentTitle":"wp_ajax_send_link_to_editor()","componentLink":"/reference/functions/wp_ajax_send_link_to_editor","private":"","deprecated":""},{"componentTitle":"wp_ajax_send_password_reset()","componentLink":"/reference/functions/wp_ajax_send_password_reset","private":"","deprecated":""},{"componentTitle":"wp_ajax_set_attachment_thumbnail()","componentLink":"/reference/functions/wp_ajax_set_attachment_thumbnail","private":"","deprecated":""},{"componentTitle":"wp_ajax_set_post_thumbnail()","componentLink":"/reference/functions/wp_ajax_set_post_thumbnail","private":"","deprecated":""},{"componentTitle":"wp_ajax_time_format()","componentLink":"/reference/functions/wp_ajax_time_format","private":"","deprecated":""},{"componentTitle":"wp_ajax_toggle_auto_updates()","componentLink":"/reference/functions/wp_ajax_toggle_auto_updates","private":"","deprecated":""},{"componentTitle":"wp_ajax_trash_post()","componentLink":"/reference/functions/wp_ajax_trash_post","private":"","deprecated":""},{"componentTitle":"wp_ajax_untrash_post()","componentLink":"/reference/functions/wp_ajax_untrash_post","private":"","deprecated":""},{"componentTitle":"wp_ajax_update_plugin()","componentLink":"/reference/functions/wp_ajax_update_plugin","private":"","deprecated":""},{"componentTitle":"wp_ajax_update_theme()","componentLink":"/reference/functions/wp_ajax_update_theme","private":"","deprecated":""},{"componentTitle":"wp_ajax_update_welcome_panel()","componentLink":"/reference/functions/wp_ajax_update_welcome_panel","private":"","deprecated":""},{"componentTitle":"wp_ajax_update_widget()","componentLink":"/reference/functions/wp_ajax_update_widget","private":"","deprecated":""},{"componentTitle":"wp_ajax_upload_attachment()","componentLink":"/reference/functions/wp_ajax_upload_attachment","private":"","deprecated":""},{"componentTitle":"wp_ajax_widgets_order()","componentLink":"/reference/functions/wp_ajax_widgets_order","private":"","deprecated":""},{"componentTitle":"wp_ajax_wp_compression_test()","componentLink":"/reference/functions/wp_ajax_wp_compression_test","private":"","deprecated":""},{"componentTitle":"wp_ajax_wp_fullscreen_save_post()","componentLink":"/reference/functions/wp_ajax_wp_fullscreen_save_post","private":"","deprecated":"deprecated"},{"componentTitle":"wp_ajax_wp_link_ajax()","componentLink":"/reference/functions/wp_ajax_wp_link_ajax","private":"","deprecated":""},{"componentTitle":"wp_ajax_wp_privacy_erase_personal_data()","componentLink":"/reference/functions/wp_ajax_wp_privacy_erase_personal_data","private":"","deprecated":""},{"componentTitle":"wp_ajax_wp_privacy_export_personal_data()","componentLink":"/reference/functions/wp_ajax_wp_privacy_export_personal_data","private":"","deprecated":""},{"componentTitle":"wp_ajax_wp_remove_post_lock()","componentLink":"/reference/functions/wp_ajax_wp_remove_post_lock","private":"","deprecated":""},{"componentTitle":"_wp_ajax_add_hierarchical_term()","componentLink":"/reference/functions/_wp_ajax_add_hierarchical_term","private":"private","deprecated":""},{"componentTitle":"_wp_ajax_delete_comment_response()","componentLink":"/reference/functions/_wp_ajax_delete_comment_response","private":"private","deprecated":""}],"Hook":[{"componentTitle":"ajax_query_attachments_args","componentLink":"/reference/hooks/ajax_query_attachments_args","private":"","deprecated":""},{"componentTitle":"heartbeat_nopriv_received","componentLink":"/reference/hooks/heartbeat_nopriv_received","private":"","deprecated":""},{"componentTitle":"heartbeat_nopriv_send","componentLink":"/reference/hooks/heartbeat_nopriv_send","private":"","deprecated":""},{"componentTitle":"heartbeat_nopriv_tick","componentLink":"/reference/hooks/heartbeat_nopriv_tick","private":"","deprecated":""},{"componentTitle":"heartbeat_received","componentLink":"/reference/hooks/heartbeat_received","private":"","deprecated":""},{"componentTitle":"heartbeat_send","componentLink":"/reference/hooks/heartbeat_send","private":"","deprecated":""},{"componentTitle":"heartbeat_tick","componentLink":"/reference/hooks/heartbeat_tick","private":"","deprecated":""},{"componentTitle":"load-widgets.php","componentLink":"/reference/hooks/load-widgets-php","private":"","deprecated":""},{"componentTitle":"term_search_min_chars","componentLink":"/reference/hooks/term_search_min_chars","private":"","deprecated":""},{"componentTitle":"widgets.php","componentLink":"/reference/hooks/widgets-php","private":"","deprecated":""},{"componentTitle":"wp_ajax_crop_image_pre_save","componentLink":"/reference/hooks/wp_ajax_crop_image_pre_save","private":"","deprecated":""},{"componentTitle":"wp_ajax_cropped_attachment_id","componentLink":"/reference/hooks/wp_ajax_cropped_attachment_id","private":"","deprecated":""},{"componentTitle":"wp_ajax_cropped_attachment_metadata","componentLink":"/reference/hooks/wp_ajax_cropped_attachment_metadata","private":"","deprecated":""},{"componentTitle":"wp_check_post_lock_window","componentLink":"/reference/hooks/wp_check_post_lock_window","private":"","deprecated":""},{"componentTitle":"wp_privacy_personal_data_erasers","componentLink":"/reference/hooks/wp_privacy_personal_data_erasers","private":"","deprecated":""},{"componentTitle":"wp_privacy_personal_data_erasure_page","componentLink":"/reference/hooks/wp_privacy_personal_data_erasure_page","private":"","deprecated":""},{"componentTitle":"wp_privacy_personal_data_export_page","componentLink":"/reference/hooks/wp_privacy_personal_data_export_page","private":"","deprecated":""},{"componentTitle":"wp_privacy_personal_data_exporters","componentLink":"/reference/hooks/wp_privacy_personal_data_exporters","private":"","deprecated":""},{"componentTitle":"wp_refresh_nonces","componentLink":"/reference/hooks/wp_refresh_nonces","private":"","deprecated":""}]}},"__N_SSG":true}