0){ foreach( $all_category["result"] as $temp){ $category_label_array[$temp["category_id"]] = $temp["category_label"]; $category_base_array[$temp["category_id"]] = $temp["category_basename"]; } } ////クエリ処理//// if(isset($_GET["category"])){ $target_category = $_GET["category"]; //複数ブログ対応 //$target_category_id が 1つ目 //$target_category_idsが対象カテゴリーID(配列) $table_name = "`mt_category`"; $where = "category_basename LIKE '".$target_category."'"; $where .= " AND "; $where_blog = ""; foreach($target_blog_id as $temp){ if($where_blog != ""){ $where_blog .= " OR "; } $where_blog .= "category_blog_id = ".$temp; } $where .= " ( ".$where_blog." ) "; $order=""; $lj=""; $on = ""; $sl = "category_id"; $target_category_result=serach_all($table_name,$where,$order,999,1,$lj,$on,$sl); if($target_category_result["count"] > 0){ $target_category_id = $target_category_result["result"][0]["category_id"]; $target_category_ids=array(); foreach ($target_category_result["result"] as $temp){ $target_category_ids[] = $temp["category_id"]; } } } if(isset($_GET["tag"])){ $target_tag = $_GET["tag"]; } if(isset($_GET["key"])){ $target_search = $_GET["key"]; } if(isset($_GET["area"])){ $target_area = $_GET["area"]; } if(!isset($_GET["page"])){$_GET["page"] = 1;} //スマホの無条件1ページ目をトップへ if( $disp_for != "top" and !$target_category and !$target_tag and !$target_search and !$target_area and $_GET["page"] == 1 and $display_mode == "sp"){ header('Location: '.HTTP_URL); exit; } /////SQL作成///// //タグ指定の場合はタグIDを取得 $tag_ids=""; $tag_entry_ids = ""; if(isset($target_tag)){ $table_name = "`mt_tag`"; $where = "tag_name LIKE '".$target_tag."'"; $order=""; $lj=""; $on = ""; $sl = "tag_id"; $tag_result=serach_all($table_name,$where,$order,999,1,$lj,$on,$sl); if($tag_result["count"] > 0){ $tag_id_array = array(); foreach($tag_result["result"] as $temp){ $tag_id_array[]=$temp["tag_id"]; } $tag_ids= implode(",",$tag_id_array); } //該当タグがついたentry_idを収集 $table_name = "`mt_objecttag`"; $where = "objecttag_tag_id IN ({$tag_ids})"; $order=""; $lj=""; $on = ""; $sl = "*"; $result=serach_all($table_name,$where,$order,99999,1,$lj,$on,$sl); if($result["count"] > 0){ $tag_entry_id_array = array(); foreach($result["result"] as $temp){ $tag_entry_id_array[]=$temp["objecttag_object_id"]; } $tag_entry_ids= implode(",",$tag_entry_id_array); } } $table_name = "`mt_entry`"; $where=""; foreach($target_blog_id as $temp){ if($where != ""){ $where .= " OR "; } $where .= "`entry_blog_id` = ".$temp; } $where = "({$where}) AND entry_status = 2"; if(isset($target_category)){ $where .= " AND (SELECT COUNT(*) FROM mt_placement WHERE placement_entry_id = entry_id AND ("; $where_blog = ""; foreach($target_category_ids as $temp){ if($where_blog != ""){ $where_blog .= " OR "; } $where_blog .= "placement_category_id = ".$temp." "; } $where .= $where_blog." ) ) > 0 "; } if(isset($target_tag)){ $where .= " AND entry_id IN ({$tag_entry_ids}) "; } if(isset($target_area)){ $where .= " AND (SELECT COUNT(*) FROM mt_entry_meta WHERE entry_meta_entry_id = entry_id AND entry_meta_type LIKE 'field.area_info' AND entry_meta_vchar_idx LIKE '".$target_area."') > 0 "; } if(EASY == 1){ //挙動確認済み 未公開理由不明 20220117 //キーワード検索 if(isset($target_search) && $target_search != ""){ $target = array( "entry_text","entry_text_more","entry_title","entry_meta_vchar_idx" ); //スラッシュ置き換え $target_search = str_replace("*****","/",$target_search); $keywords_value = keywords($target_search,$target); if($where != ""){ $where .= " AND ( ".$keywords_value['where']." ) "; }else{ $where .= $keywords_value['where']; } } }else{ //キーワード検索 if(isset($target_search) && $target_search != ""){ $target = array( "entry_text","entry_text_more","entry_title" ); $keywords_value = keywords($target_search,$target); if($where != ""){ $where .= " AND ( ".$keywords_value['where']." ) "; }else{ $where .= $keywords_value['where']; } } } $order = "entry_authored_on DESC"; if(EASY == 1){ $lj = "mt_entry_meta"; $on = "entry_meta_type = 'field.type_size' AND entry_meta_entry_id = entry_id"; }else{ $lj = ""; $on = ""; } $sl = "entry_id"; //define("SQL",1); $result=serach_all($table_name,$where,$order,$result_max,$_GET["page"],$lj,$on,$sl); if($result["count"] > 0){ foreach($result["result"] as $temp){ $result_fix_result[] = $temp; } } $count = $result["count"]; $all_page = $result["all_page"]; $page = $result["page"]; //検索結果リスト $result_html=""; $result_array = array(); $result_count = 0; if($result["count"]>0){ foreach($result["result"] as $temp){ $result_count++; $class = ''; if($result_loop != 0){ if($result_count % $result_loop == 1){ $class = $class_name; } } if($top_entries[0]["entry_id"] != $temp['entry_id']){//トップニュース除外(SP) $target_file = $result_file_dir.$temp['entry_id'].".php"; if (file_exists($target_file)) { include($target_file); } } } $list_count=0; foreach($result_array as $temp){ $list_count++; $result_html .= $temp; if($disp_for != "top"){ ////広告挿入 if(count($result_array) > 15 and $list_count == 10){ $result_html .= $result_ad; } } } } //ページャー $QUERY_STRING=""; $PARAM_STRING=""; if(isset($target_category)){ $QUERY_STRING .= "category_".$category_base_array[$target_category_id]."/"; } if(isset($target_tag)){ $QUERY_STRING .= "tag_".$target_tag."/"; } if(isset($target_search)){ $PARAM_STRING .= "key=".$target_search; } if(isset($target_area)){ $QUERY_STRING = "/".$target_area."/"; } $PageLinkBack =""; $PageLinkNext =""; if(isset($target_area)){ $pager_uri = $QUERY_STRING; }else{ $pager_uri = $blog_dir.$QUERY_STRING; } $PageLinkURL = $pager_uri; $FirstLinkURL = rtrim ($PageLinkURL, "?"); $Back=$page-1; $Next=$page+1; if($page == 2){ $PageLinkBack = $FirstLinkURL; }else{ $PageLinkBack = $PageLinkURL . 'page' . $Back.'/'; } $PageLinkNext = $PageLinkURL . 'page' . $Next.'/'; if($PARAM_STRING != ""){ $PageLinkBack .= "?".$PARAM_STRING; $PageLinkNext .= "?".$PARAM_STRING; } //メタタグ編集 if(isset($target_category)){ $result_info = "".$category_label_array[$target_category_id]."に関する記事一覧"; $result_description = "".$category_label_array[$target_category_id]."に関する記事一覧。中古・リユースビジネスの専門紙リユース経済新聞のニュースの中から「".$category_label_array[$target_category_id]."」に関する記事をご紹介します。"; $result_keywords = $category_label_array[$target_category_id].",".$result_keywords; } if(isset($target_tag)){ $result_info = "「".$target_tag."」に関する記事一覧"; $result_description = "「".$target_tag."」に関する記事一覧。中古・リユースビジネスの専門紙リユース経済新聞のニュースの中から「".$target_tag."」に関する記事をご紹介します。"; $result_keywords = $target_tag.",".$result_keywords; } if(isset($target_search)){ $result_info = "「".$target_search."」を含む記事の検索結果"; $result_description = "「".$target_search."」を含む記事検索結果。中古・リユースビジネスの専門紙リユース経済新聞のニュースの中から「".$target_search."」を含む記事をご紹介します。"; $result_keywords = $target_search.",検索,".$result_keywords; } if(isset($target_area)){ $result_info = $target_area."に関する記事の検索結果"; $result_description = $target_area."に関する記事一覧。中古・リユースビジネスの専門紙リユース経済新聞のニュースの中から「".$target_area."」に関する記事をご紹介します。"; $result_keywords = $target_area.",地域,".$result_keywords; } if($result["page"] > 1){ $result_info .= "(".$result["page"]."ページ目)"; $result_description .= "(".$result["page"]."ページ目)"; $result_keywords .= ",".$result["page"]."ページ目"; } //検索結果用表示作成 $pager = search_sub($pager_uri,$result["all_page"],$result["page"],$PARAM_STRING); //アサイン $assigns[]=array("result_info",$result_info); $assigns[]=array("result_description",$result_description); $assigns[]=array("result_keywords",$result_keywords); $assigns[]=array("all_page",$all_page); $assigns[]=array("page",$page); $assigns[]=array("Back",$Back); $assigns[]=array("Next",$Next); $assigns[]=array("PageLinkBack",$PageLinkBack); $assigns[]=array("PageLinkNext",$PageLinkNext); $assigns[]=array("result_html",$result_html); $assigns[]=array("pager",$pager); $assigns[]=array("target_category_id",$target_category_id); $assigns[]=array("target_category_name",$category_label_array[$target_category_id]); $assigns[]=array("target_tag",$target_tag); $assigns[]=array("target_category",$target_category_id); $assigns[]=array("target_search",$target_search); $assigns[]=array("target_area",$target_area); $assigns[]=array("target_category_base",$category_base_array[$target_category_id]); /*出力*/ $disp = new DISP; $disp->assigns=$assigns; $disp->main_tpl="{$display_mode}/news/index.tpl"; $disp->display(); exit(); ?>