summaryrefslogtreecommitdiffstats
path: root/wp-inst/wp-content/smarty-plugins/function.popularposts.php
diff options
context:
space:
mode:
authordonncha <donncha@7be80a69-a1ef-0310-a953-fb0f7c49ff36>2005-07-12 11:27:54 +0000
committerdonncha <donncha@7be80a69-a1ef-0310-a953-fb0f7c49ff36>2005-07-12 11:27:54 +0000
commit4f3bce79bfb5851cef9e7bc655c91bb3093cc401 (patch)
tree10a0991fddeb0e075d7fa46e2b40e5dbc64d1e88 /wp-inst/wp-content/smarty-plugins/function.popularposts.php
downloadwordpress-mu-4f3bce79bfb5851cef9e7bc655c91bb3093cc401.tar.gz
wordpress-mu-4f3bce79bfb5851cef9e7bc655c91bb3093cc401.tar.xz
wordpress-mu-4f3bce79bfb5851cef9e7bc655c91bb3093cc401.zip
Initial Import
git-svn-id: http://svn.automattic.com/wordpress-mu/trunk@1 7be80a69-a1ef-0310-a953-fb0f7c49ff36
Diffstat (limited to 'wp-inst/wp-content/smarty-plugins/function.popularposts.php')
-rw-r--r--wp-inst/wp-content/smarty-plugins/function.popularposts.php80
1 files changed, 80 insertions, 0 deletions
diff --git a/wp-inst/wp-content/smarty-plugins/function.popularposts.php b/wp-inst/wp-content/smarty-plugins/function.popularposts.php
new file mode 100644
index 0000000..4a66e32
--- /dev/null
+++ b/wp-inst/wp-content/smarty-plugins/function.popularposts.php
@@ -0,0 +1,80 @@
+<?php
+
+/* $Id: function.popularposts.php,v 1.2 2005/01/09 11:54:18 donncha Exp $ */
+
+/*
+ * Smarty plugin
+ * -------------------------------------------------------------
+ * File: function.popularposts.php
+ * Type: function
+ * Name: popularposts
+ * Purpose: outputs an image from the images/ directory.
+ * -------------------------------------------------------------
+ */
+
+function getlinks( $wpblog )
+{
+ global $wpdb, $site;
+ $s = strlen( $site );
+ $sql = "SELECT visitURL, sum( visitTimes ) as c
+ FROM `referer_visitLog`
+ WHERE blogID = '".$wpblog."'
+ AND visitURL LIKE '%/'
+ GROUP BY visitURL
+ ORDER BY c DESC LIMIT 0 , 30";
+ $results = $wpdb->get_results($sql);
+ if( $results )
+ {
+ reset( $results );
+ while( list( $key, $t ) = each( $results ) )
+ {
+ if( substr( $t->visitURL, -9 ) == 'index.php' )
+ $t->visitURL = substr( $t->visitURL, 0, -9 );
+ $hits[ $t->visitURL ] += $t->c;
+ }
+ arsort( $hits );
+ $hits = array_flip( $hits );
+ reset( $hits );
+ while( list( $key, $val ) = each( $hits ) )
+ {
+ if( substr( $val, -1 ) == '/' )
+ {
+ $post_name = substr( $val, 0, -1 );
+ $post_name = substr( $post_name, strrpos( $post_name, '/' ) + 1 );
+ $sql = "SELECT post_title
+ FROM ".$wpdb->posts."
+ WHERE post_name = '".$post_name."'";
+ $results = $wpdb->get_results($sql);
+ if( $results )
+ {
+ $links[ $key ] = array( "url" => $val, "title" => stripslashes( $results[0]->post_title ) );
+ }
+ }
+ }
+ }
+ else
+ {
+ $links = false;
+ }
+
+ return $links;
+}
+
+function smarty_function_popularposts($params, &$smarty)
+{
+ global $wpblog;
+ extract( $params );
+
+ if( @include_once( "Cache/Function.php" ) )
+ {
+ $cache = new Cache_Function( 'file', array('cache_dir' => ABSPATH . "/wp-content/smarty-cache", 'filename_prefix' => 'popularposts_cache_' ), 3600 );
+ $links = $cache->call( "getlinks", $wpblog );
+ }
+ else
+ {
+ $links = getlinks( $wpblog, $site );
+ }
+
+ $smarty->assign( "pposts", $links );
+}
+?>