Server : Apache/2.4.58 (Ubuntu) System : Linux yumsem00.cafe24.com 5.4.0-131-generic #147-Ubuntu SMP Fri Oct 14 17:07:22 UTC 2022 x86_64 User : root ( 0) PHP Version : 8.2.14 Disable Function : NONE Directory : /var/www/html/wp-content/plugins/kboard/class/ |
Upload File : |
<?php /** * KBoard 게시판 리스트 * @link www.cosmosfarm.com * @copyright Copyright 2021 Cosmosfarm. All rights reserved. * @license http://www.gnu.org/licenses/gpl.html */ class KBoardList { var $resource; var $rpp = 10; var $page = 1; var $total; var $row; /** * 게시판 리스트를 초기화한다. * @return KBoardList */ public function init(){ global $wpdb; $this->total = $wpdb->get_var("SELECT COUNT(*) FROM `{$wpdb->prefix}kboard_board_setting` WHERE 1=1"); $this->resource = $wpdb->get_results("SELECT * FROM `{$wpdb->prefix}kboard_board_setting` WHERE 1=1 ORDER BY `uid` DESC"); return $this; } /** * 게시판 이름을 검색해 리스트를 초기화한다. * @param string $keyword * @return KBoardList */ public function initWithKeyword($keyword=''){ global $wpdb; if($keyword){ $keyword = esc_sql($keyword); $where = "`board_name` LIKE '%{$keyword}%'"; } else{ $where = '1=1'; } $this->total = $wpdb->get_var("SELECT COUNT(*) FROM `{$wpdb->prefix}kboard_board_setting` WHERE {$where}"); $this->resource = $wpdb->get_results("SELECT * FROM `{$wpdb->prefix}kboard_board_setting` WHERE {$where} ORDER BY `uid` DESC LIMIT " . ($this->page-1)*$this->rpp . ",{$this->rpp}"); return $this; } /** * 생성된 게시판 숫자를 반환한다. * @return int */ public function getCount(){ return $this->total; } /** * 다음 게시판 정보를 불러온다. * @return object */ public function hasNext(){ if(!$this->resource) return ''; $this->row = current($this->resource); if($this->row){ next($this->resource); $board = new KBoard(); $board->initWithRow($this->row); return $board; } else{ unset($this->resource); return ''; } } /** * 관리자 페이지에서 게시판 보기 목록을 반환한다. * @return array */ public function getActiveAdmin(){ global $wpdb; $list = array(); $results = $wpdb->get_results("SELECT `board_id` FROM `{$wpdb->prefix}kboard_board_meta` WHERE `key`='add_menu_page'"); foreach($results as $row){ $list[] = $row->board_id; } return $list; } /** * 우커머스 상품 탭에 표시 게시판 목록을 반환한다. * @return array */ public function getWoocommerceProductTabsAdd(){ global $wpdb; $list = array(); $results = $wpdb->get_results("SELECT `{$wpdb->prefix}kboard_board_setting`.* FROM `{$wpdb->prefix}kboard_board_setting` LEFT JOIN `{$wpdb->prefix}kboard_board_meta` ON `{$wpdb->prefix}kboard_board_setting`.`uid`=`{$wpdb->prefix}kboard_board_meta`.`board_id` WHERE `{$wpdb->prefix}kboard_board_meta`.`key`='woocommerce_product_tabs_add'"); foreach($results as $row){ $list[] = (object) array( 'board_id' => $row->uid, 'board_name' => $row->board_name, 'priority' => $wpdb->get_var("SELECT `value` FROM `{$wpdb->prefix}kboard_board_meta` WHERE `board_id`='{$row->uid}' AND `key`='woocommerce_product_tabs_priority'"), ); } return $list; } }