Получить шорткод через ajax не удалось на WordPress 4.9.8 - PullRequest
0 голосов
/ 13 сентября 2018

Для пользовательских нужд я должен загружать содержимое некоторых сообщений через ajax на пользовательскую страницу шаблона.я использовал apply_filters ('the_content', $ key-> content); , и он отлично работал на моих страницах WordPress.Но когда я обновил версию WP до 4.9.8, он остановился, и ответ ajax - это просто пустая строка для некоторых шорткодов или не полностью загруженный контент для некоторых других.

после некоторого поиска я добавляю этот фрагмент

/ * --- Необходимо, поскольку Visual Compoer V 4.9 --- * / if (class_exists ('WPBMap') && method_exists ('WPBMap', 'addAllMappedShortcodes')) {

WPBMap::addAllMappedShortcodes();

}
else{
do_action( 'template_redirect' ); 


}

но проблема не была решена!

Мой код:

jQuery.ajax ({url: postdigital.ajax_url, тип: 'post', данные: {action: 'get_activContent_byID_posts', post_id: idContent}, success: function (response) {

            //  console.log(response+' tesssst');  

                }  
            });

add_action ('wp_ajax_nopriv_get_activContent_byID_posts', 'get_activContent_byID_posts';$ wpdb;

$divContent=$wpdb->get_results("SELECT type, content FROM  `tablename` WHERE id=".$_REQUEST['post_id']);
/* --- Necessary since Visual Compoer V 4.9 --- */
if ( class_exists( 'WPBMap' ) && method_exists( 'WPBMap', 'addAllMappedShortcodes' ) ) {
WPBMap::addAllMappedShortcodes();

}
else{
do_action( 'template_redirect' ); 


}


foreach($divContent as $key) 
{


      $html= apply_filters( 'the_content', $key->content );  




}

echo $html;     

wp_die(); // wp_die() instead of die() provides better integration with WordPress   

}

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...