function Packages($params = array('items_per_page' => 10, 'title' => false, 'desc' => false, 'order_by' => 'date', 'order' => 'desc', 'paging' => false, 'toolbar' => 1, 'template' => '', 'cols' => 3, 'colspad' => 2, 'colsphone' => 1, 'tags' => '', 'categorirs' => '', 'year' => '', 'month' => '')) { $params['order_by'] = isset($params['order_field']) && $params['order_field'] != '' && !isset($params['order_by']) ? $params['order_field'] : $params['order_by']; $scparams = $params; $defaults = array('items_per_page' => 10, 'title' => false, 'desc' => false, 'order_by' => 'date', 'order' => 'desc', 'paging' => false, 'toolbar' => 1, 'template' => 'link-template-panel', 'cols' => 3, 'colspad' => 2, 'colsphone' => 1); $params = shortcode_atts($defaults, $params, 'wpdm_packages'); if (is_array($params)) { extract($params); } $cwd_class = "col-md-" . (int) (12 / $cols); $cwdsm_class = "col-sm-" . (int) (12 / $colspad); $cwdxs_class = "col-xs-" . (int) (12 / $colsphone); if (isset($id)) { $id = trim($id, ", "); $cids = explode(",", $id); } global $wpdb, $current_user, $post, $wp_query; if (isset($order_by) && !isset($order_field)) { $order_field = $order_by; } $order_field = isset($order_field) ? $order_field : 'date'; $order_field = isset($_GET['orderby']) ? $_GET['orderby'] : $order_field; $order = isset($order) ? $order : 'desc'; $order = isset($_GET['order']) ? $_GET['order'] : $order; $cp = wpdm_query_var('cp', 'num'); if (!$cp) { $cp = 1; } $params = array('post_type' => 'wpdmpro', 'paged' => $cp, 'posts_per_page' => $items_per_page, 'include_children' => false); if (isset($scparams['month']) && $scparams['month'] != '') { $params['monthnum'] = $scparams['month']; } if (isset($scparams['year']) && $scparams['year'] != '') { $params['year'] = $scparams['year']; } if (isset($scparams['day']) && $scparams['day'] != '') { $params['day'] = $scparams['day']; } if (isset($scparams['search']) && $scparams['search'] != '') { $params['s'] = $scparams['search']; } if (isset($scparams['tag']) && $scparams['tag'] != '') { $params['tag'] = $scparams['tag']; } if (isset($scparams['tag_id']) && $scparams['tag_id'] != '') { $params['tag_id'] = $scparams['tag_id']; } if (isset($scparams['tag__and']) && $scparams['tag__and'] != '') { $params['tag__and'] = explode(",", $scparams['tag__and']); } if (isset($scparams['tag__in']) && $scparams['tag__in'] != '') { $params['tag__in'] = explode(",", $scparams['tag__in']); } if (isset($scparams['tag__not_in']) && $scparams['tag__not_in'] != '') { $params['tag__not_in'] = explode(",", $scparams['tag__not_in']); } if (isset($scparams['tag_slug__and']) && $scparams['tag_slug__and'] != '') { $params['tag_slug__and'] = explode(",", $scparams['tag_slug__and']); } if (isset($scparams['tag_slug__in']) && $scparams['tag_slug__in'] != '') { $params['tag_slug__in'] = explode(",", $scparams['tag_slug__in']); } if (isset($scparams['categories']) && $scparams['categories'] != '') { $operator = isset($scparams['operator']) ? $scparams['operator'] : 'OR'; $params['tax_query'] = array(array('taxonomy' => 'wpdmcategory', 'field' => 'slug', 'terms' => explode(",", $scparams['categories']), 'include_children' => isset($scparams['include_children']) && $scparams['include_children'] != '' ? $scparams['include_children'] : false, 'operator' => $operator)); } if (get_option('_wpdm_hide_all', 0) == 1) { $params['meta_query'] = array(array('key' => '__wpdm_access', 'value' => '"guest"', 'compare' => 'LIKE')); if (is_user_logged_in()) { global $current_user; $params['meta_query'][] = array('key' => '__wpdm_access', 'value' => $current_user->roles[0], 'compare' => 'LIKE'); $params['meta_query']['relation'] = 'OR'; } } $order_fields = array('__wpdm_download_count', '__wpdm_view_count', '__wpdm_package_size_b'); if (!in_array("__wpdm_" . $order_field, $order_fields)) { $params['orderby'] = $order_field; $params['order'] = $order; } else { $params['orderby'] = 'meta_value_num'; $params['meta_key'] = "__wpdm_" . $order_field; $params['order'] = $order; } $params = apply_filters("wpdm_packages_query_params", $params); $packs = new \WP_Query($params); $total = $packs->found_posts; $pages = ceil($total / $items_per_page); $page = isset($_GET['cp']) ? $_GET['cp'] : 1; $start = ($page - 1) * $items_per_page; if (!isset($paging) || intval($paging) == 1) { $pag = new \WPDM\libs\Pagination(); $pag->items($total); $pag->nextLabel(' ► '); $pag->prevLabel(' ◄ '); $pag->limit($items_per_page); $pag->currentPage($page); } $burl = get_permalink(); $url = $_SERVER['REQUEST_URI']; //get_permalink(); $url = strpos($url, '?') ? $url . '&' : $url . '?'; $url = preg_replace("/[\\&]*cp=[0-9]+[\\&]*/", "", $url); $url = strpos($url, '?') ? $url . '&' : $url . '?'; if (!isset($paging) || intval($paging) == 1) { $pag->urlTemplate($url . "cp=[%PAGENO%]"); } $html = ''; $templates = maybe_unserialize(get_option("_fm_link_templates", true)); if (isset($templates[$template])) { $template = $templates[$template]['content']; } //global $post; while ($packs->have_posts()) { $packs->the_post(); $pack = (array) $post; $repeater = "<div class='{$cwd_class} {$cwdsm_class} {$cwdxs_class}'>" . \WPDM\Package::FetchTemplate($template, $pack) . "</div>"; $html .= $repeater; } wp_reset_query(); $html = "<div class='row'>{$html}</div>"; if (!isset($paging) || intval($paging) == 1) { $pgn = "<div style='clear:both'></div>" . $pag->show() . "<div style='clear:both'></div>"; } else { $pgn = ""; } global $post; $sap = get_option('permalink_structure') ? '?' : '&'; $burl = $burl . $sap; if (isset($_GET['p']) && $_GET['p'] != '') { $burl .= 'p=' . $_GET['p'] . '&'; } if (isset($_GET['src']) && $_GET['src'] != '') { $burl .= 'src=' . $_GET['src'] . '&'; } $orderby = isset($_GET['orderby']) ? $_GET['orderby'] : 'create_date'; $order = ucfirst($order); $title = isset($title) && $title != '' ? "<h3>{$title}</h3>" : ""; return "<div class='w3eden'>" . $title . $desc . $html . $pgn . "<div style='clear:both'></div></div>"; }
function wpdm_embed_category($params = array('id' => '', 'operator' => 'IN', 'items_per_page' => 10, 'title' => false, 'desc' => false, 'order_field' => 'create_date', 'order' => 'desc', 'paging' => false, 'toolbar' => 1, 'template' => '', 'cols' => 3, 'colspad' => 2, 'colsphone' => 1)) { extract($params); $fnparams = $params; if (!isset($id)) { return; } if (!isset($items_per_page)) { $items_per_page = 10; } if (!isset($template)) { $template = 'link-template-calltoaction3.php'; } if (!isset($cols)) { $cols = 1; } if (!isset($colspad)) { $colspad = 1; } if (!isset($colsphone)) { $colsphone = 1; } if (!isset($toolbar)) { $toolbar = 1; } $taxo = 'wpdmcategory'; if (isset($tag) && $tag == 1) { $taxo = 'post_tag'; } $cwd_class = "col-md-" . (int) (12 / $cols); $cwdsm_class = "col-sm-" . (int) (12 / $colspad); $cwdxs_class = "col-xs-" . (int) (12 / $colsphone); $id = trim($id, ", "); $cids = explode(",", $id); global $wpdb, $current_user, $post, $wp_query; $order_field = isset($order_field) ? $order_field : 'publish_date'; $order_field = isset($_GET['orderby']) ? $_GET['orderby'] : $order_field; $order = isset($order) ? $order : 'desc'; $order = isset($_GET['order']) ? $_GET['order'] : $order; $operator = isset($operator) ? $operator : 'IN'; $cpvar = 'cp_' . $cids[0]; $cp = wpdm_query_var($cpvar, 'num'); if (!$cp) { $cp = 1; } $params = array('post_type' => 'wpdmpro', 'paged' => $cp, 'posts_per_page' => $items_per_page, 'include_children' => false, 'tax_query' => array(array('taxonomy' => $taxo, 'field' => 'slug', 'terms' => $cids, 'operator' => $operator))); if (get_option('_wpdm_hide_all', 0) == 1) { $params['meta_query'] = array(array('key' => '__wpdm_access', 'value' => 'guest', 'compare' => 'LIKE')); if (is_user_logged_in()) { global $current_user; $params['meta_query'][] = array('key' => '__wpdm_access', 'value' => $current_user->roles[0], 'compare' => 'LIKE'); $params['meta_query']['relation'] = 'OR'; } } $params['orderby'] = $order_field; $params['order'] = $order; $params = apply_filters("wpdm_embed_category_query_params", $params); $packs = new WP_Query($params); $total = $packs->found_posts; $pages = ceil($total / $items_per_page); $page = isset($_GET[$cpvar]) ? $_GET[$cpvar] : 1; $start = ($page - 1) * $items_per_page; if (!isset($paging) || $paging == 1) { $pag = new \WPDM\libs\Pagination(); $pag->items($total); $pag->nextLabel(' ► '); $pag->prevLabel(' ◄ '); $pag->limit($items_per_page); $pag->currentPage($page); } $burl = get_permalink(); $url = $_SERVER['REQUEST_URI']; //get_permalink(); $url = strpos($url, '?') ? $url . '&' : $url . '?'; $url = preg_replace("/[\\&]*{$cpvar}=[0-9]+[\\&]*/", "", $url); $url = strpos($url, '?') ? $url . '&' : $url . '?'; if (!isset($paging) || $paging == 1) { $pag->urlTemplate($url . "{$cpvar}=[%PAGENO%]"); } $html = ''; $templates = maybe_unserialize(get_option("_fm_link_templates", true)); if (isset($templates[$template])) { $template = $templates[$template]['content']; } global $post; while ($packs->have_posts()) { $packs->the_post(); $pack = (array) $post; $repeater = "<div class='{$cwd_class} {$cwdsm_class} {$cwdxs_class}'>" . FetchTemplate($template, $pack) . "</div>"; $html .= $repeater; } wp_reset_query(); $html = "<div class='row'>{$html}</div>"; $cname = array(); foreach ($cids as $cid) { $cat = get_term_by('slug', $cid, $taxo); $cname[] = $cat->name; } $cats = implode(", ", $cname); //Added from v4.2.1 $desc = ''; if (isset($fnparams['title']) && $fnparams['title'] != false && intval($fnparams['title']) != 1) { $cats = $fnparams['title']; } if (isset($fnparams['desc']) && $fnparams['desc'] != false && intval($fnparams['desc']) != 1) { $desc = $fnparams['desc']; } if (isset($fnparams['desc']) && $fnparams['desc'] == 1) { $desc = term_description($cids[0], $taxo); } $cimg = ''; $subcats = ''; if (function_exists('wpdm_ap_categories') && $subcats == 1) { $schtml = wpdm_ap_categories(array('parent' => $id)); if ($schtml != '') { $subcats = "<fieldset class='cat-page-tilte'><legend>" . __('Sub-Categories', 'wpdmpro') . "</legend>" . $schtml . "<div style='clear:both'></div></fieldset>" . "<fieldset class='cat-page-tilte'><legend>" . __('Downloads', 'wpdmpro') . "</legend>"; $efs = '</fieldset>'; } } if (!isset($paging) || $paging == 1) { $pgn = "<div style='clear:both'></div>" . $pag->show() . "<div style='clear:both'></div>"; } else { $pgn = ""; } global $post; $sap = get_option('permalink_structure') ? '?' : '&'; $burl = $burl . $sap; if (isset($_GET['p']) && $_GET['p'] != '') { $burl .= 'p=' . $_GET['p'] . '&'; } if (isset($_GET['src']) && $_GET['src'] != '') { $burl .= 'src=' . $_GET['src'] . '&'; } $orderby = isset($_GET['orderby']) ? $_GET['orderby'] : 'create_date'; $order = ucfirst($order); $order_field = " " . __(ucwords(str_replace("_", " ", $order_field)), "wpdmpro"); $ttitle = __('Title', 'wpdmpro'); $tdls = __('Downloads', 'wpdmpro'); $tcdate = __('Publish Date', 'wpdmpro'); $tudate = __('Update Date', 'wpdmpro'); $tasc = __('Asc', 'wpdmpro'); $tdsc = __('Desc', 'wpdmpro'); $tsrc = __('Search', 'wpdmpro'); $order_by_label = __('Order By', 'wpdmpro'); if ($toolbar || get_option('__wpdm_cat_tb') == 1) { $toolbar = <<<TBR <div class="navbar navbar-default" role="navigation"> <div class="container-fluid"> <!-- Brand and toggle get grouped for better mobile display --> <div class="navbar-header"> <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1"> <span class="sr-only">Toggle navigation</span> <span class="icon-bar"></span> <span class="icon-bar"></span> <span class="icon-bar"></span> </button> <a class="navbar-brand" href="#">{$cats}</a> </div> <!-- Collect the nav links, forms, and other content for toggling --> <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1"> <ul class="nav navbar-nav navbar-right"> <li class="dropdown"> <a href="#" class="dropdown-toggle" data-toggle="dropdown">{$order_by_label} {$order_field} <b class="caret"></b></a> <ul class="dropdown-menu"> <li><a href="{$burl}orderby=title&order=asc">{$ttitle}</a></li> <!-- li><a href="{$burl}orderby=download_count&order=desc">{$tdls}</a></li --> <li><a href="{$burl}orderby=publish_date&order=desc">{$tcdate}</a></li> </ul> </li> <li class="dropdown"> <a href="#" class="dropdown-toggle" data-toggle="dropdown">{$order} <b class="caret"></b></a> <ul class="dropdown-menu"> <li><a href="{$burl}orderby={$orderby}&order=asc">{$tasc}</a></li> <li><a href="{$burl}orderby={$orderby}&order=desc">{$tdsc}</a></li> </ul> </li> </ul> </div><!-- /.navbar-collapse --> </div><!-- /.container-fluid --> </div> TBR; } else { $toolbar = ''; } return "<div class='w3eden'>" . $toolbar . $cimg . $desc . $subcats . $html . $pgn . "<div style='clear:both'></div></div>"; }