'; print_r($arr); echo ''; } function gen_pagination($total,$currentPage,$baseLink,$nextPrev=true,$limit=10) { if(!$total OR !$currentPage OR !$baseLink) { return false; } //Total Number of pages $totalPages = ceil($total/$limit); //Text to use after number of pages //$txtPagesAfter = ($totalPages==1)? " page": " pages"; //Start off the list. //$txtPageList = '
'.$totalPages.$txtPagesAfter.' :
'; //Show only 3 pages before current page(so that we don't have too many pages) $min = ($page - 3 < $totalPages && $currentPage-3 > 0) ? $currentPage-3 : 1; //Show only 3 pages after current page(so that we don't have too many pages) $max = ($page + 3 > $totalPages) ? $totalPages : $currentPage+3; //Variable for the actual page links $pageLinks = ""; $baseLinkArr = parse_url($baseLink); $start = ''; if(isset($baseLinkArr['query']) && !empty($baseLinkArr['query'])) { $start = '&'; } else { $start = '?'; } //Loop to generate the page links for($i=$min;$i<=$max;$i++) { if($currentPage==$i) { //Current Page $pageLinks .= ''.$i.''; } elseif($max <= $totalPages OR $i <= $totalPages) { $pageLinks .= ''.$i.''; } } if($nextPrev) { //Next and previous links $next = ($currentPage + 1 > $totalPages) ? false : 'Next'; $prev = ($currentPage - 1 <= 0 ) ? false : 'Previous'; } if($totalPages > 1) { return '
'; } else { return ''; } } function count_shortcode($content = '') { $return = array(); if(!empty($content)) { $pattern = get_shortcode_regex(); $count = preg_match_all('/'.$pattern.'/s', $content, $matches); $return['total'] = $count; if(isset($matches[0])) { foreach($matches[0] as $match) { $return['content'][] = substr_replace($match ,"",-1); } } } return $return; } function pp_breadcrumbs() { $delimiter = '»'; $name = get_bloginfo('name'); //text for the 'Home' link $currentBefore = ''; $currentAfter = ''; if ( !is_home() && !is_front_page() || is_paged() ) { echo '
'; global $post; $home = get_bloginfo('url'); echo '' . $name . ' ' . $delimiter . ' '; if ( is_category() ) { global $wp_query; $cat_obj = $wp_query->get_queried_object(); $thisCat = $cat_obj->term_id; $thisCat = get_category($thisCat); $parentCat = get_category($thisCat->parent); if ($thisCat->parent != 0) echo(get_category_parents($parentCat, TRUE, ' ' . $delimiter . ' ')); echo $currentBefore . 'Archive by category ''; single_cat_title(); echo ''' . $currentAfter; } elseif ( is_day() ) { echo '' . get_the_time('Y') . ' ' . $delimiter . ' '; echo '' . get_the_time('F') . ' ' . $delimiter . ' '; echo $currentBefore . get_the_time('d') . $currentAfter; } elseif ( is_month() ) { echo '' . get_the_time('Y') . ' ' . $delimiter . ' '; echo $currentBefore . get_the_time('F') . $currentAfter; } elseif ( is_year() ) { echo $currentBefore . get_the_time('Y') . $currentAfter; } elseif ( is_single() && !is_attachment() ) { $cat = get_the_category(); $cat = $cat[0]; echo get_category_parents($cat, TRUE, ' ' . $delimiter . ' '); echo $currentBefore; the_title(); echo $currentAfter; } elseif ( is_attachment() ) { $parent = get_post($post->post_parent); $cat = get_the_category($parent->ID); $cat = $cat[0]; echo get_category_parents($cat, TRUE, ' ' . $delimiter . ' '); echo '' . $parent->post_title . ' ' . $delimiter . ' '; echo $currentBefore; the_title(); echo $currentAfter; } elseif ( is_page() && !$post->post_parent ) { echo $currentBefore; the_title(); echo $currentAfter; } elseif ( is_page() && $post->post_parent ) { $parent_id = $post->post_parent; $breadcrumbs = array(); while ($parent_id) { $page = get_page($parent_id); $breadcrumbs[] = '' . get_the_title($page->ID) . ''; $parent_id = $page->post_parent; } $breadcrumbs = array_reverse($breadcrumbs); foreach ($breadcrumbs as $crumb) echo $crumb . ' ' . $delimiter . ' '; echo $currentBefore; the_title(); echo $currentAfter; } elseif ( is_search() ) { echo $currentBefore . 'Search results for '' . get_search_query() . ''' . $currentAfter; } elseif ( is_tag() ) { echo $currentBefore . 'Posts tagged ''; single_tag_title(); echo ''' . $currentAfter; } elseif ( is_author() ) { global $author; $userdata = get_userdata($author); echo $currentBefore . 'Articles posted by ' . $userdata->display_name . $currentAfter; } elseif ( is_404() ) { echo $currentBefore . 'Error 404' . $currentAfter; } if ( get_query_var('paged') ) { if ( is_category() || is_day() || is_month() || is_year() || is_search() || is_tag() || is_author() ) echo ' ('; echo __('Page') . ' ' . get_query_var('paged'); if ( is_category() || is_day() || is_month() || is_year() || is_search() || is_tag() || is_author() ) echo ')'; } echo '
'; } } /** * Setup blog comment style **/ function pp_comment($comment, $args, $depth) { $GLOBALS['comment'] = $comment; ?>
' ); ?>
comment_approved == '0') : ?>
comment_author; ?>
= $lengths[$j]; $j++) $difference /= $lengths[$j]; $difference = round($difference); if($difference != 1) $periods[$j].= "s"; $text = "$difference $periods[$j] ago"; return $text; } // Substring without losing word meaning and // tiny words (length 3 by default) are included on the result. // "..." is added if result do not reach original string length function pp_substr($str, $length, $minword = 3) { $sub = ''; $len = 0; foreach (explode(' ', $str) as $word) { $part = (($sub != '') ? ' ' : '') . $word; $sub .= $part; $len += strlen($part); if (strlen($word) > $minword && strlen($sub) >= $length) { break; } } return $sub . (($len < strlen($str)) ? '...' : ''); } /** * Setup recent posts widget **/ function pp_posts($sort = 'recent', $items = 3, $echo = TRUE, $bg_color = 'black' , $echo_title = TRUE) { $return_html = ''; if($sort == 'recent') { $posts = get_posts('numberposts='.$items.'&order=DESC&orderby=date&post_type=post&post_status=publish'); $title = 'Recent Posts'; } else { global $wpdb; $query = "SELECT ID, post_title, post_content FROM {$wpdb->prefix}posts WHERE post_type = 'post' AND post_status= 'publish' ORDER BY comment_count DESC LIMIT 0,".$items; $posts = $wpdb->get_results($query); $title = 'Popular Posts'; } if(!empty($posts)) { if($echo_title) { $return_html.= '

'.$title.'

'; } $return_html.= ''; } if($echo) { echo $return_html; } else { return $return_html; } } function _substr($str, $length, $minword = 3) { $sub = ''; $len = 0; foreach (explode(' ', $str) as $word) { $part = (($sub != '') ? ' ' : '') . $word; $sub .= $part; $len += strlen($part); if (strlen($word) > $minword && strlen($sub) >= $length) { break; } } return $sub . (($len < strlen($str)) ? '...' : ''); } function get_the_content_with_formatting ($more_link_text = '(more...)', $stripteaser = 0, $more_file = '') { $pp_blog_read_more_title = get_option('pp_blog_read_more_title'); if(empty($pp_blog_read_more_title)) { $pp_blog_read_more_title = 'Read More'; } $content = get_the_content('', $stripteaser, $more_file); $content = strip_shortcodes($content); $content = str_replace(']]>', ']]>', $content); $content = _substr(strip_tags(strip_shortcodes($content)), 600); $content.= '


'.$pp_blog_read_more_title.''; return $content; } function image_from_description($data) { preg_match_all('/]*)>/i', $data, $matches); return $matches[1][0]; } function select_image($img, $size) { $img = explode('/', $img); $filename = array_pop($img); // The sizes listed here are the ones Flickr provides by default. Pass the array index in the // 0 for square, 1 for thumb, 2 for small, etc. $s = array( '_s.', // square '_t.', // thumb '_m.', // small '.', // medium '_b.' // large ); $img[] = preg_replace('/(_(s|t|m|b))?\./i', $s[$size], $filename); return implode('/', $img); } function get_flickr($settings) { if (!function_exists('MagpieRSS')) { // Check if another plugin is using RSS, may not work include_once (ABSPATH . WPINC . '/class-simplepie.php'); error_reporting(E_ERROR); } if(!isset($settings['items']) || empty($settings['items'])) { $settings['items'] = 9; } // get the feeds if ($settings['type'] == "user") { $rss_url = 'http://api.flickr.com/services/feeds/photos_public.gne?id=' . $settings['id'] . '&tags=' . $settings['tags'] . '&per_page='.$settings['items'].'&format=rss_200'; } elseif ($settings['type'] == "favorite") { $rss_url = 'http://api.flickr.com/services/feeds/photos_faves.gne?id=' . $settings['id'] . '&format=rss_200'; } elseif ($settings['type'] == "set") { $rss_url = 'http://api.flickr.com/services/feeds/photoset.gne?set=' . $settings['set'] . '&nsid=' . $settings['id'] . '&format=rss_200'; } elseif ($settings['type'] == "group") { $rss_url = 'http://api.flickr.com/services/feeds/groups_pool.gne?id=' . $settings['id'] . '&format=rss_200'; } elseif ($settings['type'] == "public" || $settings['type'] == "community") { $rss_url = 'http://api.flickr.com/services/feeds/photos_public.gne?tags=' . $settings['tags'] . '&format=rss_200'; } else { print 'No "type" parameter has been setup. Check your settings, or provide the parameter as an argument.'; die(); } # get rss file $feed = new SimplePie($rss_url); $photos_arr = array(); foreach ($feed->get_items() as $key => $item) { $enclosure = $item->get_enclosure(); $img = image_from_description($item->get_description()); $thumb_url = select_image($img, 0); $large_url = select_image($img, 4); $photos_arr[] = array( 'title' => $enclosure->get_title(), 'thumb_url' => $thumb_url, 'url' => $large_url, ); $current = intval($key+1); if($current == $settings['items']) { break; } } return $photos_arr; } function html2rgb($color) { if ($color[0] == '#') $color = substr($color, 1); if (strlen($color) == 6) list($r, $g, $b) = array($color[0].$color[1], $color[2].$color[3], $color[4].$color[5]); elseif (strlen($color) == 3) list($r, $g, $b) = array($color[0].$color[0], $color[1].$color[1], $color[2].$color[2]); else return false; $r = hexdec($r); $g = hexdec($g); $b = hexdec($b); return array($r, $g, $b); } function hex_lighter($hex,$factor = 30) { $new_hex = ''; $base['R'] = hexdec($hex{0}.$hex{1}); $base['G'] = hexdec($hex{2}.$hex{3}); $base['B'] = hexdec($hex{4}.$hex{5}); foreach ($base as $k => $v) { $amount = 255 - $v; $amount = $amount / 100; $amount = round($amount * $factor); $new_decimal = $v + $amount; $new_hex_component = dechex($new_decimal); if(strlen($new_hex_component) < 2) { $new_hex_component = "0".$new_hex_component; } $new_hex .= $new_hex_component; } return $new_hex; } function hex_darker($hex,$factor = 30) { $new_hex = ''; $base['R'] = hexdec($hex{0}.$hex{1}); $base['G'] = hexdec($hex{2}.$hex{3}); $base['B'] = hexdec($hex{4}.$hex{5}); foreach ($base as $k => $v) { $amount = $v / 100; $amount = round($amount * $factor); $new_decimal = $v - $amount; $new_hex_component = dechex($new_decimal); if(strlen($new_hex_component) < 2) { $new_hex_component = "0".$new_hex_component; } $new_hex .= $new_hex_component; } return $new_hex; } function theme_queue_js(){ if (!is_admin()){ if (!is_page() AND is_singular() AND comments_open() AND (get_option('thread_comments') == 1)) { wp_enqueue_script( 'comment-reply' ); } } } add_action('get_header', 'theme_queue_js'); ?>