Ну, во-первых, все-таки надо разобраться Эво или Рево у вас. Во-вторых, судя по всему, эта задача опять-таки уровнем для вас слишком сложная, так как незнание как изменить что-то в шаблонизации и межсерверное взаимодействие - это примерно как не уметь еще на трехколесном велосипеде кататься, но уже хотеть управлять истрибителем. Но чтобы вы не говорили, что мы просто отговорки здесь лепим и не хотим помогать, приведу вам реальный код, который дергает курсы с ЦБР и обновляет их на сайте. Сможете под себя адаптировать - круто. Не сможете - просите специалистов за деньги помочь, и это вопрос не менее 1000 рублей (зависит еще от структуры сайта).
<?php /* Обновляем курсы валют */ class modWebCurrenciesUpdatecoursesProcessor extends modProcessor{ public function process(){ $date_req = date('d/m/Y'); $url = "http://www.cbr.ru/scripts/XML_daily.asp?date_req={$date_req}"; if(!$xml = simplexml_load_file($url)){ $error = "Не удалось получить курсы валют"; $this->modx->log(xPDO::LOG_LEVEL_ERROR, "[- ".__CLASS__." -] {$error}"); return $this->failure($error); } //else foreach($xml->Valute as $v){ if($v->CharCode == 'USD'){ if($course = round((float)str_replace(",", ".", $v->Value), 2)){ $this->update_course(772, $course); } } else if($v->CharCode == 'EUR'){ if($course = round((float)str_replace(",", ".", $v->Value), 2)){ $this->update_course(773, $course); } } } // Очищаем кеш $this->modx->cacheManager->refresh(); return $this->success("Курсы успешно обновлены"); } protected function update_course($id, $course){ if($doc = $this->modx->getObject('modResource', $id)){ $doc->setTVValue(42, $course); } return true; } } return 'modWebCurrenciesUpdatecoursesProcessor';

Вернуться к списку комментариев