public function actionWeixinArticleList() { $request = Yii::$app->request; $limit = $request->get('limit', 10); $offset = $request->get('page', 0) * $limit; $category_id = $request->get('category'); $tag_id = $request->get('tag'); //不按类别 $sql = ''; if (isset($tag_id)) { // 获取这个tag下的所有文章返回 $res = Article_tag_rel::get_all_article_id_by($tag_id); $article_ids = []; if (!empty($res)) { foreach ($res as $article_tag_rel) { $article_ids[] = $article_tag_rel['article_id']; } } $article_ids = join($article_ids, ','); $sql = "select * from weixin_article where status != -1 and id in ({$article_ids}) order by sort desc,create_time desc limit {$offset},{$limit}"; } elseif (isset($category)) { // 设置了 category } else { $sql = "select * from weixin_article where status != -1 order by id desc limit {$offset},{$limit}"; } $articles = Yii::$app->db->createCommand($sql)->queryAll(); // 给所有文章加上标签 foreach ($articles as &$article) { $article['tag'] = Article_tag_rel::get_all_tag_id_by($article['id']); } return json_encode($articles); }
public function actionWeixinArticleUpdate($id) { $request = Yii::$app->request; $weixin_article = WeixinArticle::find()->where("id = {$id}")->one(); if ($request->isPost) { $post = $request->post(); $files = Fileupload::upload(); if ($files) { $post['img'] = isset($files[0]) ? $files[0] : './img/default.jpg'; } $weixin_article->set_weixin_article($post); $weixin_article->save(); // 获取存储后纪录 id $weixin_article_id = $weixin_article->id; // 重新建立微信文章和栏目的多对多关系 $article_type = Article_category_rel::WEIXIN_ARTICLE; Article_category_rel::deleteAll("article_id = {$weixin_article_id} and article_type = {$article_type}"); foreach ($post['category'] as $category_id) { $article_category_rel = new Article_category_rel(); $article_category_rel->category_id = $category_id; $article_category_rel->article_id = $weixin_article_id; $article_category_rel->article_type = Article_category_rel::WEIXIN_ARTICLE; $article_category_rel->save(); } // 重新建立微信文章和标签的多对多关系 $article_type = Article_tag_rel::WEIXIN_ARTICLE; Article_tag_rel::deleteAll("article_id = {$weixin_article_id} and article_type = {$article_type}"); foreach ($post['tag'] as $tag_id) { $article_tag_rel = new Article_tag_rel(); $article_tag_rel->tag_id = $tag_id; $article_tag_rel->article_id = $weixin_article_id; $article_tag_rel->article_type = Article_tag_rel::WEIXIN_ARTICLE; $article_tag_rel->save(); } $weixin_article->category = Article_category_rel::get_all_category_id_by($id); $weixin_article->tag = Article_tag_rel::get_all_tag_id_by($id); return $this->render("weixin-article-update", ["msg" => "修改成功", 'weixin_article' => $weixin_article, 'id' => $id]); } // 查看微信文章 $weixin_article->category = Article_category_rel::get_all_category_id_by($id); $weixin_article->tag = Article_tag_rel::get_all_tag_id_by($id); return $this->render('weixin-article-update', ['weixin_article' => $weixin_article, 'id' => $id]); }