calculate + woocommerce

Добрый день. Купил  плагин (http://cff.dwbooster.com/faq  — FAQ плагина). Мне нужно в расчётах добывать стоимость товара woocommerce, плагин позволяет (вроде как) делать это через запросы к бд. 

calculate + woocommerce

Кто может подсказатль как именно нужно написать запрос к БД, чтобы вернулась стоимость товаров с нужными мне ID? (в виде массива) Или хотя бы стоимость одного товара с нужным ID Как я понимаю должен я обратиться в таком порядке: wp_postmeta -> post_id=»2195″ -> meta_key=»_price» Как это правильно написать не знаю

UPD: 


SELECT meta_value FROM wp_postmeta WHERE post_id =2195 AND meta_key = '_price'

Написал вот так. Цена дёрнулась, но не совсем как мне надо. 

calculate + woocommerce

Как видно, возвращается объект, а мне надо получать только целое число например.

Добавить Комментарий

Правильно вам все вернулось, как вы представляете результат выборки нескольких элементов?

Я думаю вам нужно переформулировать вопрос, вам просто цены нужно получить? Именно через плагин? Для чего нужно цены получить и где их выводить?

 

Цены будут использоваться при расчётах в JS скрипте.

 

в 26.03.2016.
Добавить Комментарий

Извиняюсь что долго не отвечал.

Не понимаю если честно в чем проблема. Вы получили цену. Так используйте.

Может вам нужно подсказать как сделать запрос с помощью php? Или как передать его в js?

 

Добавить Комментарий

Нужно чтобы я передал список айди товаров и получил массив соответвующих цен

вот извращенский способ:

 function onwp_get_price($array) {
 // задаем нужные нам критерии выборки данных из БД
 $args = array(
 'post_type' => 'product',
 'post__in' => $array// ваш массив с id продуктов
 );
 $query = new WP_Query($args);
 $result = array();
 // Цикл
 if ($query->have_posts()) {
 $i = 0;
 while ($query->have_posts()) {
 $query->the_post();
 $result[$i]['id_product'] = get_the_ID();
 $result[$i]['price'] = get_post_meta(get_the_ID(), '_price', true);
 $i++;
 }
 } else {
 // Постов не найдено
 }
 /* Возвращаем оригинальные данные поста. Сбрасываем $post. */
 wp_reset_postdata();
 return $result;
 }
// получим массив id продукта и цену
 $price_product = onwp_get_price(array('111', '222'));
 // вывод
 if (!empty($price_product)) {
 foreach ($price_product as $value) {
 echo 'id: ' . $value['id_product'] . ', цена: ' . $value['price'] . '<br />';
 }
 }
 

$price_product — массив который содержит id продукта и его цену

в 08.04.2016.
Добавить Комментарий

И как передать в JS тоже интересно

можно сохранить в <input type=»hidden»> в формате json и с помощью js уже извлекать из поля

Можно прямо перевести в json и прямо в js прописать(в php файле)

<?php
$arr = onwp_get_price(array('111', '222'));
echo '<script> var price = JSON.parse('.json_encode($arr).'); </script>';
?>
 
в 08.04.2016.
Добавить Комментарий

Ваш ответ

Размещая свой ответ, вы соглашаетесь с правилами сайта.