Sometimes we have a lot of content above the posts on paginated archive pages. Archive title, archive description, maybe a call to action etc. When the user clicks to view the next page of posts, we may not want to show them all that content again on the 2nd, 3rd page.

We can use Oxygen's conditions feature to show/hide all that content based on what page the user is on.

This isn't a condition that comes built-in out of the box, but we can register our own.

Register Our Pagination Condition

We place this is our code snippets.

if( function_exists('oxygen_vsb_register_condition') ) {
	global $oxy_condition_operators;

	oxygen_vsb_register_condition('Page #', array('custom' => true), $oxy_condition_operators['int'], 'condition_paged_callback', 'Archive');


function condition_paged_callback($value, $operator) {
	$value = intval($value);
	$paged = ( get_query_var( 'paged' ) ) ? get_query_var( 'paged' ) : 1;

	return oxy_condition_eval_int($paged, $value, $operator);

The condition will appear inside Oxygen under the Archive heading.. I named it 'Page #'.

The condition checks to see if the number we enter matches the current page the user is on.

In the example above you can see we have set the Page number to equal 1. That means this element will only show on the first page of the archive. When the user clicks to the next page /blog/page/2/ or /blog/page/3/ etc they won't see this content.

All done

This is especially useful if your posts page is set as your home page and you have lots of sections above posts with pagination. It prevents the user from needing to scroll down past all that content just to get to the posts.

Need help implementing a tutorial in your site or want to hire me for custom work?


Find the article helpful and wish to donate?



You need to be logged in to view and post comments.
Not a member yet? Join here.
linkedin facebook pinterest youtube rss twitter instagram facebook-blank rss-blank linkedin-blank pinterest youtube twitter instagram
%d bloggers like this: