Esempio n. 1
0
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);
}
Esempio n. 2
0
 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);
 }