function wpbdp_get_page_id($name = 'main') { $page_ids = wpbdp_get_page_ids($name); if (!$page_ids) { return false; } return apply_filters('wpbdp_get_page_id', $page_ids[0], $name); }
public function _handle_action(&$wp) { if (is_page() && in_array(get_the_ID(), wpbdp_get_page_ids('main'))) { $action = get_query_var('action') ? get_query_var('action') : (isset($_REQUEST['action']) ? $_REQUEST['action'] : ''); if (get_query_var('category_id') || get_query_var('category')) { $action = 'browsecategory'; } if (get_query_var('tag')) { $action = 'browsetag'; } if (get_query_var('id') || get_query_var('listing')) { $action = 'showlisting'; } if (!$action) { $action = 'main'; } $this->action = $action; } else { $this->action = null; } }
private function get_rewrite_rules() { global $wpdb; global $wp_rewrite; $rules = array(); // TODO: move this to WPML Compat. if ($page_ids = wpbdp_get_page_ids('main')) { foreach ($page_ids as $page_id) { $page_link = _get_page_link($page_id); $rewrite_base = str_replace('index.php/', '', rtrim(str_replace(home_url() . '/', '', $page_link), '/')); $rules['(' . $rewrite_base . ')/' . $wp_rewrite->pagination_base . '/?([0-9]{1,})/?$'] = 'index.php?page_id=' . $page_id . '&paged=$matches[2]'; $rules['(' . $rewrite_base . ')/' . wpbdp_get_option('permalinks-category-slug') . '/(.+?)/' . $wp_rewrite->pagination_base . '/?([0-9]{1,})/?$'] = 'index.php?page_id=' . $page_id . '&category=$matches[2]&paged=$matches[3]'; $rules['(' . $rewrite_base . ')/' . wpbdp_get_option('permalinks-category-slug') . '/(.+?)/?$'] = 'index.php?page_id=' . $page_id . '&category=$matches[2]'; $rules['(' . $rewrite_base . ')/' . wpbdp_get_option('permalinks-tags-slug') . '/(.+?)/' . $wp_rewrite->pagination_base . '/?([0-9]{1,})/?$'] = 'index.php?page_id=' . $page_id . '&tag=$matches[2]&paged=$matches[3]'; $rules['(' . $rewrite_base . ')/' . wpbdp_get_option('permalinks-tags-slug') . '/(.+?)$'] = 'index.php?page_id=' . $page_id . '&tag=$matches[2]'; if (wpbdp_get_option('permalinks-no-id')) { //$rules['(' . $rewrite_base . ')/([0-9]{1,})/?$'] = 'index.php?page_id=' . $page_id . '&id=$matches[2]'; $rules['(' . $rewrite_base . ')/(.*)/?$'] = 'index.php?page_id=' . $page_id . '&listing=$matches[2]'; } else { $rules['(' . $rewrite_base . ')/([0-9]{1,})/?(.*)/?$'] = 'index.php?page_id=' . $page_id . '&id=$matches[2]'; } } } return apply_filters('wpbdp_rewrite_rules', $rules); }