Forum Replies Created

Viewing 2 replies - 91 through 92 (of 92 total)
  • Thread Starter Tim Codex

    (@tien-nguyen)

    Hi Bigul,

    Thank you for a fast feedback.

    As the result of the query on right sidebar, my posts are:
    24 videos
    17 photos
    3 links
    11 quotes
    6 articles

    The code after modify is:

    function pre_custom_query( $query )
    {
    	if (!$query->is_main_query()) {
    		return;
    	}
    	$queried = false;
    	if ( is_home() ) {
    		$gsort = $_GET["sort"];
    		if ($gsort!='') {
    			if ($gsort == 'comments') {
    				$query->set( 'orderby', 'comment_count');
    			} else {
    				$query->set( 'orderby', 'meta_value_num');
    				$query->set( 'meta_key', $gsort);
    
    			}
    			add_filter( 'posts_where', 'wpa85491_filter_where' );
    		}
    		global $ptlist;
    		foreach ($ptlist as $pt) {
    			$post_type[] = strtolower($pt);
    		}
    		//$post_type = array('video','photo','audio','link', 'quote', 'article');
    		$query->set( 'post_type', $post_type );
    		//$query->set( 'posts_per_page', $posts_per_page );
    		//$query->set( 'paged', $paged );
    		$queried = true;
    	} else
    
    	if ( is_archive() ) {
    		$post_type = get_query_var('post_type');
    		if ($post_type != '') {
    			$gsort = $_GET["sort"];
    			if ($gsort!='') {
    				if ($gsort == 'comments') {
    					$query->set( 'orderby', 'comment_count');
    				} else {
    					$query->set( 'orderby', 'meta_value_num');
    					$query->set( 'meta_key', $gsort);
    				}
    				add_filter( 'posts_where', 'wpa85491_filter_where' );
    			}
    
    			$query->set( 'post_type', $post_type );
    			//$query->set( 'posts_per_page', $posts_per_page );
    			//$query->set( 'paged', $paged );
    			$queried = true;
    		}
    	} 
    
    	// Author page
    	$current_url =  $_SERVER['REQUEST_URI'];
    	$curauth = (get_query_var('author_name')) ? get_user_by('slug', get_query_var('author_name')) : get_userdata(get_query_var('author'));
    	$author_id = $curauth->data->ID;	
    
    	// seperate type
    	if (!$queried) {
    		global $ptlist;
    		$found = false;
    		$post_type = array();
    		if (strpos($current_url, '/blog/'.$curauth->user_nicename) !== false) {
    			$found = true;
    			foreach ($ptlist as $pt) {
    				$post_type[] = strtolower($pt);
    			}
    		} else {
    			foreach ($ptlist as $pt) {
    				if (strpos($current_url, '/'.strtolower($pt).'/'.$curauth->user_nicename) !== false) {
    					$found = true;
    					$post_type[] = strtolower($pt);
    					break;
    				}
    			}
    		}
    
    		// found an author page
    		if ($found) {
    			$query->set( 'post_type', $post_type );
    			$posts_per_page = get_query_var('posts_per_page');
    			if ($posts_per_page == '') {
    				$posts_per_page = 20;
    			}	
    
    			//get page number
    			$pageindex = strpos($current_url, '/page/');
    			if ($pageindex !== false) {
    				$paged = (int) substr($current_url,$pageindex+strlen('/page/'));
    			} else {
    				$paged = 1;
    			}
    
    			$query->set( 'paged', $paged );
    			$query->set( 'page', '');
    			$query->set( 'author_name', '');
    			$query->set( 'author', $author_id );
    /*			$query->set( 'is_single', false );
    			$query->set( 'is_archive', true );
    			$query->set( 'is_author', true );
    			$query->set( 'is_singular', false );*/
    			$query->set( 'posts_per_page', $posts_per_page );
    
    		}
    	}
    
    	return $query;
    }
    // Display only 1 post for the original blog archive
    //add_action( 'pre_get_posts', 'pre_custom_query', 1 );
    add_action( 'pre_get_posts', 'pre_custom_query');

    But still have no effect.

    Thank you,
    Tien

    I got the same error, when I use this plugin on an archive page, it’s become error. Stars show ok, but when I click to rate, all stars hid and loading image display forever.

Viewing 2 replies - 91 through 92 (of 92 total)