/** * 인스턴스를 반환한다. * @return KDFilesystem */ public static function getInstance() { if (!self::$instance) { self::$instance = new KDFilesystem(); } return self::$instance; }
public function pluginDownload() { if (!current_user_can('activate_plugins')) { echo '<script>alert("설치 권한이 없습니다.");</script>'; } else { $file = KDFilesystem::getInstance(); $install_dir = WP_CONTENT_DIR . '/plugins'; $package = $_GET['package'] == 'kboard' ? 'kboard' : 'comments'; $version = $_GET['version']; $form_url = wp_nonce_url(admin_url("/admin.php?page=kboard_downloader_main&action=kboard_downloader_execute&package={$package}&version={$version}"), 'kboard_downloader_execute'); if (!$file->credentials($form_url, $install_dir)) { exit; } $result = $file->install($package, $version, $install_dir); if ($result) { echo '<script>alert("성공적으로 설치되었습니다. 플러그인을 활성화 해주세요.");</script>'; } else { echo '<script>alert("설치에 실패 했습니다.");</script>'; } } }