1
나는 워드 프레스에서 자동 완성을 추가하는 데 아무런 노력을하지 않고 있습니다. 내 functions.php에서Wordpress 및 jquery 자동 완성 메타 키
: 내 autocomplete.js에서
// Loads files with autocomplete
wp_register_script('jquery-ui', get_template_directory_uri() . '/js/jquery-ui.min.js', array('jquery'));
wp_enqueue_script('jquery-ui');
wp_register_style('jquery-style', get_template_directory_uri() . '/js/jquery-ui.css');
wp_enqueue_style('jquery-style');
wp_register_script('autocomplete-ui', get_template_directory_uri() . '/js/autocomplete.js', array('jquery'));
wp_localize_script('autocomplete-ui', 'autocomplete-object', array('url' => admin_url('admin-ajax.php')));
wp_enqueue_script('autocomplete-ui');
돌아 가기 내 functions.php에서
function ($) {
'use strict';
$(function() {
$("#busca").autocomplete({
source: function(request, response) {
$.ajax({
type: 'GET',
dataType: "json",
data: {
action: "autocompleteCallback",
term: request.term
},
success: function (data) {
}, }); } }); }); }(jQuery);
:
function acCallback() {
global $wpdb;
$search = $_REQUEST['term'];
$query = $wpdb->get_results("SELECT $wpdb->postmeta.meta_value FROM $wpdb->postmeta WHERE postmeta.meta_value LIKE \'' . $search . '%\' AND post_type = \'NAME OF CUSTOM POST TITLE \'
AND $wpdb->postmeta.meta_key = 'produto'");
$tab = array();
foreach ($query->posts as $p):
$tab[] =array('value'=>$p->postmeta.meta_value);
endforeach;
echo(json_encode($tab));
exit;
}
add_action('wp_ajax_autocompleteCallback', 'acCallback');
add_action('wp_ajax_nopriv_autocompleteCallback', 'acCallback');
아무것도 내 자동 완성에 표시되지 않습니다 ... 내 실수는 무엇입니까? 어떤 도움 주셔서 감사합니다
그리고 어디 AJAX URL은? AJAX에 무엇을 부를 지 알려줄 필요가 있습니다. –
확인. 나는 그것을했지만 여전히 작동하지 : – Tatiana
$ ("#busca") .autocomplete ({ \t 출처 : 기능 (요청, 응답) { \t $ 아약스 ({ \t \t URL : 자동 완성 - object.ajax_url, – Tatiana