@kna999

Как изменять значения полей ACF в базе данных?

Всех приветствую. Добавляю через ACF две цены на товар, корзина не используется заявка будет отправляться через простую форму.
Интересует как меня эти самые 2-а поля с ценой в зависимости от курса ЦБ РФ? Валюта товара USD нужно переводить в RUB по курсу цб автоматически.
  • Вопрос задан
  • 68 просмотров
Решения вопроса 1
@kna999 Автор вопроса
Все сделал просто и удобно:
1. Создал в ACF поля с ценами
2. В Wp All Import в function editor вставил следующий код
<?php	

function GetDollar(){
   if(isset($_COOKIE["dollar"])) { 
      $dollar = $_COOKIE["dollar"];
   }
   else {
      //валюты
      $valutes = simplexml_load_file("http://www.cbr.ru/scripts/XML_daily.asp");
      $dollar = 70; //по умолчанию
      if(!empty($valutes)){      
         foreach ($valutes->Valute as $valute) {
            if ($valute->CharCode == 'USD') { //тип валюты
               $dollar = round(str_replace(',','.',$valute->Value), 2); //ее значение      
               SetCookie("dollar",$dollar,time()+3600*12); 
            } 
         }
      }
   }
   return $dollar;
}

function round_price( $price = null, $multiplier = 1 ) {
if ( !empty( $price ) ) {

$price = preg_replace("/[^0-9,.]/", ",", $price);

return ( round ( $price * $multiplier, 2 )); 

}
}

?>

3. Вставил в соответствие полей ACF при импорте
[round_price({undefined6[1]},GetDollar())]
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
UnluckySerivelha
@UnluckySerivelha
1. Получить курс USD, например
2. Во время сохранения записи рассчитать цену в RUB, используя курс из п.1 и обновить ACF поле
Ответ написан
@Asokr
Напишите скрипт, который, по крону обновляет цены раз в сутки, к примеру.
Поля ACF, это мета поля к записи
https://misha.agency/wordpress/update_post_meta.html

Или по ссылке, что дали выше...
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы