我正在使用jQuery UI自动完成三种不同的表单建议。一切正常,唯一的问题是建议的标题不是utf-8(我认为):
我没有“Bla Bla-Bla”,而是“Bla Bla&;8211 Bla”
这是我的js:
$(\'.ricerca-mirata input\').focus(function() {
var postType = $(this).data(\'tipo\');
var url = aela.ajax_url + "?action=my_search&post_type=" + postType;
$( ".autocomplete" ).autocomplete({
source: url,
delay: 500,
minLength: 3
});
});
和我的php:
function my_search() {
$term = strtolower( $_GET[\'term\'] );
$post_type = $_GET[\'post_type\'];
$suggestions = array();
$loop = new WP_Query( array(
\'s\' => $term,
\'post_type\' => $post_type,
\'post_status\' => \'publish\'
) );
while( $loop->have_posts() ) {
$loop->the_post();
$suggestion = array();
$suggestion[\'label\'] = get_the_title();
$suggestion[\'link\'] = get_permalink();
$suggestions[] = $suggestion;
}
wp_reset_query();
$response = json_encode( $suggestions );
echo $response;
exit();
}
你有什么想法吗?非常感谢您的帮助!
最合适的回答,由SO网友:TheDeadMedic 整理而成
拆下滤清器wptexturize
, 这就是导致编码问题的原因:
remove_filter( \'the_title\', \'wptexturize\' );
while ( $loop->have_posts() ) {
// Your code
}