/** * Метод запрашивает данные указанного проекта с Тильды, включая страницы проекта, и сохраняет эти данные в опции tilda_projects * @param int $project_id - код проекта в Тильде * @return stdClass $project обновленные данные по проекту */ public static function update_project($project_id) { $project = Tilda::get_projectexport($project_id); $projects = Tilda::get_local_projects(); $pages = Tilda::get_pageslist($project_id); if ($pages && count($pages) > 0) { $project->pages = array(); foreach ($pages as $page) { $project->pages[$page->id] = $page; } } $projects[$project_id] = $project; $upload_dir = Tilda::get_upload_dir() . $project->id . '/'; if (!is_dir($upload_dir)) { mkdir($upload_dir, 0755); } // self::clear_dir($upload_dir); $css_path = $upload_dir . 'css/'; $js_path = $upload_dir . 'js/'; $pages_path = $upload_dir . 'pages/'; if (!is_dir($css_path)) { mkdir($css_path, 0755); } if (!is_dir($js_path)) { mkdir($js_path, 0755); } if (!is_dir($pages_path)) { mkdir($pages_path, 0755); } update_option('tilda_projects', $projects); return $project; }