database = $database; $this->init_hooks(); } private function init_hooks() { add_shortcode('lista_ramais', array($this, 'render_ramais_list')); } public function render_ramais_list($atts) { $atts = shortcode_atts(array( 'per_page' => RAMAIS_TELEFONICOS_PER_PAGE ), $atts); $page = isset($_GET['ramais_page']) ? absint($_GET['ramais_page']) : 1; $filters = array( 'search' => isset($_GET['ramais_search']) ? sanitize_text_field($_GET['ramais_search']) : '', 'secretaria' => isset($_GET['ramais_secretaria']) ? sanitize_text_field($_GET['ramais_secretaria']) : '', 'setor' => isset($_GET['ramais_setor']) ? sanitize_text_field($_GET['ramais_setor']) : '' ); $data = $this->database->get_filtered_ramais($filters, $page, $atts['per_page']); $ramais = $data['data']; $total_pages = $data['pages']; $current_page = $data['current_page']; ob_start(); include RAMAIS_TELEFONICOS_PLUGIN_DIR . 'templates/lista-ramais.php'; return ob_get_clean(); } }