Notification with buddypress and Question list pagination not working.

6.47K viewsCore
1
  1. I am using Anspress with BuddyPress but Notification for Anspress is not working, I don’t have any idea why it is not working.
  2. Pagination for Question list is also not working, when I click on page 2 it’s show page not found.

Please help me with this. I am using BuddyPress 3.0.43 and Anspress 2.4.7 .

Thank you

I have the same problem, when I click on page 2 it’s show page not found!

0

Thank for the reply Rahul. I have tried this solution but it’s not working.
Let me tell you I have customized the plugin core file, see the following code with “——-” what I have added in question-loop.php:

<?php
/**
* Question class
*
*@package AnsPress
*@author Rahul Aryan <[email protected]>
*@license GPL-2.0+
*@link http://rahularyan.com
*@copyright 2014 Rahul Aryan
*/

// If this file is called directly, abort.
if ( ! defined( ‘WPINC’ ) ) {
die;
}

if ( ! class_exists( ‘Question_Query’ ) ) :

/**
* Question
*
* This class is for retriving questions based on $args
*/
class Question_Query extends WP_Query {

public $args = array();

/**
* Initialize class
*@param array $args
*@access public
*@since 2.0
*/
public function __construct( $args = array() ) {

if ( is_front_page() ) {
$paged = (isset( $_GET[’ap_paged’] )) ? (int) $_GET[’ap_paged’] : 1; } else {
$paged = (get_query_var( ‘paged’ )) ? get_query_var( ‘paged’ ) : 1; }

if ( isset( $args[’post_parent’] ) ) {
$post_parent = $args[’post_parent’];
} else {
$post_parent = (get_query_var( ‘parent’ )) ? get_query_var( ‘parent’ ) : false;
}

$defaults = array(
‘showposts’ => ap_opt( ‘question_per_page’ ),
‘paged’ => $paged,
);

$args[’post_status’][] = ‘publish’;
$args[’post_status’][] = ‘closed’;

if ( $post_parent ) {
$this->args[’post_parent’] = $post_parent;
}

$this->args = wp_parse_args( $args, $defaults );

if ( get_query_var( ‘ap_s’ ) != ” ) {
$this->args[’s’] = sanitize_text_field( get_query_var( ‘ap_s’ ) );
}

if ( isset( $this->args[ ‘sortby’ ] ) ) {

—————————————————————————–
$this->orderby_questions($this->args[ ‘global_group_id’ ]);

—————————————————————————–
}

$this->args[’post_type’] = ‘question’;

$args = $this->args;

/**
* Initialize parent class
*/

parent::__construct( $args );
}

/**
* Modify orderby args
*@return void
*/
public function orderby_questions($get_global_group_id) {
$q_g_id = $get_global_group_id;
switch ( $this->args[ ‘sortby’ ] ) {
case ‘answers’ :
$this->args[ ‘orderby’ ] = ‘meta_value_num’;
$this->args[ ‘meta_key’ ] = ANSPRESS_ANS_META;
break;
case ‘unanswered’ :
$this->args[ ‘orderby’ ] = ‘meta_value_num date’;
$this->args[ ‘meta_key’ ] = ANSPRESS_ANS_META ;
$this->args[ ‘meta_value’ ] = 0 ;
break;
case ‘voted’ :
$this->args[’orderby’] = ‘meta_value_num’;
$this->args[’meta_key’] = ANSPRESS_VOTE_META;
break;
case ‘unsolved’ :
$this->args[’orderby’] = ‘meta_value_num date’;
$this->args[’meta_key’] = ANSPRESS_SELECTED_META;
$this->args[’meta_compare’] = ‘=’;
$this->args[’meta_value’] = false;

break;
case ‘oldest’ :
$this->args[’orderby’] = ‘date’;
$this->args[’order’] = ‘ASC’;
break;
case ‘active’ :
$this->args[’orderby’] = ‘meta_value’;
$this->args[’meta_key’] = ANSPRESS_UPDATED_META;
$this->args[’meta_query’] = array(
‘relation’ => ‘OR’,
array(
‘key’ => ANSPRESS_UPDATED_META,
),
);
break;
case ‘with_group’ :
$this->args[’orderby’] = ‘date’;
$this->args[’order’] = ‘ASC’;
//$this->args[’meta_key’] = ‘question_group_id’;
$this->args[’meta_query’] = array(
‘relation’ => ‘AND’,
array(
‘key’ => ‘question_group_id’,
‘value’ => $q_g_id,
‘compare’ => ‘=’,
),
);
break;

// TOOD: Add more orderby like most viewed, and user order like ‘answered by user_id’, ‘asked_by_user_id’
}

}

}
endif;

function ap_get_questions($args = array()) {

if ( is_front_page() ) {
$paged = (isset( $_GET[’ap_paged’] )) ? (int) $_GET[’ap_paged’] : 1;
} else {
$paged = (get_query_var( ‘paged’ )) ? get_query_var( ‘paged’ ) : 1;
}

if ( ! isset( $args[’post_parent’] ) ) {
$args[’post_parent’] = (get_query_var( ‘parent’ )) ? get_query_var( ‘parent’ ) : false;
}

if ( ! isset( $args[’sortby’] ) ) {
//$args[’sortby’] = (isset( $_GET[’ap_sort’] )) ? $_GET[’ap_sort’] : ‘active’;

—————————————————————————–

$args[’sortby’] = (isset( $_GET[’ap_sort’] )) ? $_GET[’ap_sort’] : ‘with_group’;
GLOBAL $global_group_id;
$args[’global_group_id’] = $global_group_id;

—————————————————————————–
}

if ( is_super_admin() || current_user_can( ‘ap_view_private’ ) ) {
$args[’post_status’][] = ‘private_post’;
}

if ( is_super_admin() || current_user_can( ‘ap_view_moderate’ ) ) {
$args[’post_status’][] = ‘moderate’;
}
$args = wp_parse_args( $args, array(
‘showposts’ => ap_opt( ‘question_per_page’ ),
‘paged’ => $paged,
‘ap_query’ => ‘featured_post’,
));
//print_r($args);exit;
return new Question_Query( $args );
///$tmp = new Question_Query( $args );
//print_r($tmp); exit;
}
edited answer

Don’t throw code like this in the post. There is a special function for that: (CODE)

You are viewing 1 out of 3 answers, click here to view all answers.