Создать акаунт
Всё для вебмастера » Вопросы и ответы » CMS » WordPress » Как загрузить данные через Ajax ,вместо PHP для недавно просмотренных товаров?

Как загрузить данные через Ajax ,вместо PHP для недавно просмотренных товаров?

09 мар 2023, 14:12
WordPress
153
0
Подскажите пожалуйста как загрузить данные через Ajax ,вместо PHP? ( о том, что нужно использовать этот способ, мне сообщил разработчик плагина кеширования)

Через шорткод [recently_viewed_products] удается вывести недавно просмотренные товары, но не удается избежать кеширования для содержимого.

add_action( 'template_redirect', 'truemisha_recently_viewed_product_cookie', 20 ); function truemisha_recently_viewed_product_cookie() { // если находимся не на странице товара, ничего не делаемif ( ! is_product() ) {return;} if ( empty( $_COOKIE[ 'woocommerce_recently_viewed_2' ] ) ) {$viewed_products = array();} else {$viewed_products = (array) explode( '|', $_COOKIE[ 'woocommerce_recently_viewed_2' ] );} // добавляем в массив текущий товарif ( ! in_array( get_the_ID(), $viewed_products ) ) {$viewed_products[] = get_the_ID();} // нет смысла хранить там бесконечное количество товаровif ( sizeof( $viewed_products ) > 15 ) {array_shift( $viewed_products ); // выкидываем первый элемент}  // устанавливаем в кукиwc_setcookie( 'woocommerce_recently_viewed_2', join( '|', $viewed_products ) ); }


add_shortcode( 'recently_viewed_products', 'truemisha_recently_viewed_products' ); function truemisha_recently_viewed_products() { if( empty( $_COOKIE[ 'woocommerce_recently_viewed_2' ] ) ) {$viewed_products = array();} else {$viewed_products = (array) explode( '|', $_COOKIE[ 'woocommerce_recently_viewed_2' ] );} if ( empty( $viewed_products ) ) {return;} // надо ведь сначала отображать последние просмотренные$viewed_products = array_reverse( array_map( 'absint', $viewed_products ) ); $title = '<h3>Вы уже смотрели</h3>'; $product_ids = join( ",", $viewed_products ); return $title . do_shortcode( "[products ids='$product_ids']" ); }


Источник кода:
Ссылка удалена модератором.

Внимание! Как загрузить данные через Ajax ,вместо PHP для недавно просмотренных товаров? предоставлен пользователями сайта исключительно в ознакомительных целях. Администрация не несет ответственности за его содержимое.

Смотрите также:

Комментарии к Как загрузить данные через Ajax ,вместо PHP для недавно просмотренных товаров?
Добавить Комментарий
В комментариях запрещаются спам, а также реклама любых товаров и услуг, иных ресурсов.
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.