8797 sujets

Développement web côté serveur, CMS

Salut,
J'ai un système de pagination sur wordpress. Il fonctionne et affiche bien le nombre de page 1,2,3 etc... quand je clique sur 2 par exemple, l'url change bien, pour /page/2/. Mais le contenu reste lui la page 1. Impossible de naviguer sur les pages.
Je n'y comprends rien, et c'est vachement handicapant !

Merci pour votre aide

Voici les fonctions utilisées :

// Function name:
//  - get_category_pages 
// Description:
//  - Used for creating pages buttons on listing pages
// Parameters:
// 	- total_posts: number of total post of a category
//  - cat_id: the category id
// Returns:
//  - the HTML code for pages buttons 

function get_category_pages($total_posts, $cat_id) {
	global $posts_per_page;
	include(get_absolute_url(get_bloginfo('template_directory').'/config_files/content/website_customtext.php'));
	$nrpages = $total_posts/$posts_per_page;
	$pages = intval($nrpages);
	$currentpage = k_get_current_page('currentpage');
	
	
	if ($nrpages > $pages) {
		$pages_nr = $pages+1;
	}
	else {
		$pages_nr = $pages;
	}
	$content = '<div class="Pages CBR2">';
	$content .= '<span class=PageNumbers>';
	if ($pages_nr > 1) {
		for($i = 1 ; $i <= $pages_nr ; $i++) {
			$content .= '<a class="PageLink ';

				if ($currentpage == $i) {
					$content .= 'CurrentPage';
				}
				
				if ($i == 1) {
					$content .= 'depth1 ';
				}

				if ($i == $pages_nr) {
					$content .= 'depth3 ';
				}		
				
			if (get_option('permalink_structure') != '') {
				$content .= '" href="'.get_category_link($cat_id).'/page/'.$i.'"><span>'.$i.'</span></a>';
			}
			else {
				$content .= '" href="'.get_category_link($cat_id).'&pagenr='.$i.'"><span>'.$i.'</span></a>';
			}
		}
	}
	$pagestext = str_replace("%x", $currentpage, do_shortcode(utf8_decode($PageXofY)));
	$pagestext = str_replace("%y", $pages_nr, $pagestext);
	$content .= '</span>';
	$content .= '<span class=PageNumber>'.$pagestext.'</span>';
	$content .= '</div>';
	
	if($pages_nr > 1) {
		return $content;
	}
	
}

// Function name:
//  - get_current_page 
// Description:
//  - Used for getting the curent page for categories with pages browsing
// Parameters:
// 	- opt: can be:
//           - currentpage - for returning the current page
//           - offset - for returning the last post of the previous page
// Returns:
//  - see parameters

function k_get_current_page($opt) {
	global $posts_per_page;
	
	if (get_option('permalink_structure') != '') {
	
			$current_page = array();
			$current_page = explode("/", $_SERVER['REQUEST_URI']);
			$el = count($current_page)-2;
			$check = $current_page[$el];
			
			
			if ($check == 'page') {
			
			$el = count($current_page)-1;
			$page_nr = $current_page[$el];
			$offset = ($current_page[$el]-1)*$posts_per_page;
			
			
				
				if ($offset < 0) {
					$offset = 0;
				}
			}
			else {
				
				$offset = 0;
				$page_nr = 1;
					
			}
	}
	else {
		$page_nr = $_GET['pagenr'];
		if ($page_nr) {
			$offset = ($page_nr-1)*$posts_per_page;
		}
		else {
			$offset = 0;
			$page_nr = 1;			
		}
	}
	
	if ($opt == 'offset') {
		return $offset;
	}
	if ($opt == 'currentpage') {
		return $page_nr;
	}	
	
}