Vâng, điều này là có thể.
Bạn có thể sử dụng Đề xuất tự động jQuery được bao gồm trong WordPress http://codex.wordpress.org/Function_Reference/wp_enqueue_script
Với điều này, bạn có thể viết một biểu mẫu tìm kiếm Ajax cho trình xử lý URL Ajax. Mà bạn có thể add_action lên. http://codex.wordpress.org/AJAX_in_Plugins
Vì vậy, bạn có thể tra cứu ajax và sau đó về phía hành động, bạn chỉ có thể thực hiện một get_posts để khớp với tiêu đề hoặc Truy vấn sql thô. Và trả lại những gì cần thiết.
Điều đó sẽ giúp ích, nếu tôi có thời gian ngắn, tôi có thể viết một giải pháp mã đầy đủ. Nhưng phần lớn của nó là một plugin toàn bộ để giúp cung cấp năng lượng cho việc tra cứu.
Chỉnh sửa: Ở đây chúng tôi đi, một cái gì đó như thế này sẽ làm điều đó, đã không kiểm tra nó chỉ viết nó ra khỏi đầu của tôi. Cập nhật: Thoát khỏi văn bản đã nhập, thu hẹp theo loại bài đăng tùy chỉnh và chỉ các bài đăng được xuất bản
2012-11-21 Chỉnh sửa: cập nhật lỗi chính tả trong mẫu mã.
add_action('wp_enqueue_scripts', 'se_wp_enqueue_scripts');
function se_wp_enqueue_scripts() {
wp_enqueue_script('suggest');
}
add_action('wp_head', 'se_wp_head');
function se_wp_head() {
?>
<script type="text/javascript">
var se_ajax_url = '<?php echo admin_url('admin-ajax.php'); ?>';
jQuery(document).ready(function() {
jQuery('#se_search_element_id').suggest(se_ajax_url + '?action=se_lookup');
});
</script>
<?php
}
add_action('wp_ajax_se_lookup', 'se_lookup');
add_action('wp_ajax_nopriv_se_lookup', 'se_lookup');
function se_lookup() {
global $wpdb;
$search = like_escape($_REQUEST['q']);
$query = 'SELECT ID,post_title FROM ' . $wpdb->posts . '
WHERE post_title LIKE \'' . $search . '%\'
AND post_type = \'post_type_name\'
AND post_status = \'publish\'
ORDER BY post_title ASC';
foreach ($wpdb->get_results($query) as $row) {
$post_title = $row->post_title;
$id = $row->ID;
$meta = get_post_meta($id, 'YOUR_METANAME', TRUE);
echo $post_title . ' (' . $meta . ')' . "\n";
}
die();
}