diff --git a/Plugin.php b/Plugin.php index 6820583..1341b40 100644 --- a/Plugin.php +++ b/Plugin.php @@ -273,7 +273,10 @@ private static function widget($table, $pkId) $className = "Widget_Abstract_{$table}"; $key = $keys[$table]; $db = Typecho_Db::get(); - $widget = new $className(Typecho_Request::getInstance(), Typecho_Widget_Helper_Empty::getInstance()); + if (class_exists('\Typecho\Widget\Request')) + $widget = new $className(new \Typecho\Widget\Request(\Typecho\Request::getInstance()), new \Typecho\Widget\Response(\Typecho\Request::getInstance(), \Typecho\Response::getInstance())); + else + $widget = new $className(Typecho_Request::getInstance(), Typecho_Widget_Helper_Empty::getInstance()); $db->fetchRow( $widget->select()->where("{$key} = ?", $pkId)->limit(1),