New Feature: Earn 12 Badges

Bild

Collect up to 12 exclusive badges by sharing your plugin collections and engaging with the community.

See all Badges
Admin Post Navigation
Admin Post Navigation

by Scott Reilly

Description
This plugin adds “← Previous” and “Next →” links to the “Edit Post” admin page if a previous and next post are present, respectively. The link titles (visible when hovering over the links) reveal the title of the previous/next post. The links link to the “Edit Post” admin page for the previous/next posts so that you may edit them.
By default, a previous/next post is determined by the next lower/higher valid post based on the date the post was created and which is also a post the user can edit. Other post criteria such as post type (draft, pending, etc), publish date, post author, category, etc, are not taken into consideration when determining the previous or next post.
Users can customize how post navigation ordering is handled via the “Screen Options” panel available at the top of every page when editing a post. A dropdown presents options to order navigation by: ‘ID’, ‘menu_order’, ‘post_date’, ‘post_modified’, ‘post_name’, and ‘post_title’. Post navigation can further be customized via filters (see Filters section).
NOTE: Be sure to save the post currently being edited (if you’ve made any changes) before navigating away to the previous/next post!
Links: Plugin Homepage | Plugin Directory Page | GitHub | Author Homepage
Filters
The plugin is further customizable via six filters. Such code should ideally be put into a mu-plugin or site-specific plugin (which is beyond the scope of this readme to explain).
c2c_admin_post_navigation_orderby (filter)
The ‘c2c_admin_post_navigation_orderby’ filter allows you to change the post field used in the ORDER BY clause for the SQL to find the previous/next post. By default this is ‘post_date’ for non-hierarchical post types (such as posts) and ‘post_title’ for hierarchical post types (such as pages). If you wish to change this, hook this filter. Note: users can customize the post navigation order field for themselves on a per-post type basis via “Screen Options” (see FAQ and screenshot for more info).
Arguments:
$field (string) The current ORDER BY field
$post_type (string) The post type being navigated
$user_id (int) The user’s ID
Example:
/**
* Modify how Admin Post Navigation orders posts for navigation by changing the
* ordering of pages by ‘menu_order’.
*
* @param string $field The field used to order posts for navigation.
* @param string $post_type The post type being navigated.
* @param int $user_id. The user’s ID.
* @return string
*/
function custom_order_apn( $field, $post_type, $user_id ) {
// Only change the order for the ‘page’ post type.
if ( ‘page’ === $post_type ) {
$field = ‘menu_order’;
}

return $field;
}
add_filter( ‘c2c_admin_post_navigation_orderby’, ‘custom_order_apn’, 10, 3 );
c2c_admin_post_navigation_post_statuses (filter)
The ‘c2c_admin_post_navigation_post_statuses’ filter allows you to modify the list of post_statuses used as part of the search for the prev/next post. By default this array includes ‘draft’, ‘future’, ‘pending’, ‘private’, and ‘publish’. If you wish to change this, hook this filter. This is not typical usage for most users.
Arguments:
$post_statuses (array) The array of valid post_statuses
$post_type (string) The post type
Example:
/**
* Modify Admin Post Navigation to allow and disallow certain post statuses from being navigated.
*
* @param array $post_statuses Post statuses permitted for admin navigation.
* @param string $post_type The post type.
* @return array
*/
function change_apn_post_status( $post_statuses, $post_type ) {
// Add a post status.
// Note: by default these are already in the $post_statuses array: ‘draft’, ‘future’, ‘pending’, ‘private’, ‘publish’
$post_statuses[] = ‘trash’;

// Remove post status(es).
$post_statuses_to_remove = array( ‘draft’ ); // Customize here.
if ( ‘page’ === $post_type ) {
$post_statuses_to_remove[] = ‘pending’;
}
foreach ( $post_statuses_to_remove as $remove ) {
if ( false !== $index = array_search( $remove, $post_statuses ) ) {
unset( $post_statuses[ $index ] );
}
}

return array_values( $post_statuses );
}
add_filter( ‘c2c_admin_post_navigation_post_statuses’, ‘change_apn_post_status’, 10, 2 );
c2c_admin_post_navigation_post_types (filter)
The ‘c2c_admin_post_navigation_post_types’ filter allows you to modify the list of post_types used as part of the search for the prev/next post. By default this array includes all available post types. If you wish to change this, hook this filter.
Arguments:
$post_types (array) The array of valid post_types
Examples:
/**
* Modify Admin Post Navigation to only allow navigating strictly for posts.
*
* @param array $post_types Post types that should have admin post navigation.
* @return array
*/
function change_apn_post_types( $post_types ) {
return array( ‘post’ );
}
add_filter( ‘c2c_admin_post_navigation_post_types’, ‘change_apn_post_types’ );

/**
* Modify Admin Post Navigation to disallow navigation for the ‘recipe’ post type.
*
* @param array $post_types Post types that should have admin post navigation.
* @return array
*/
function remove_recipe_apn_post_types( $post_types ) {
if ( isset( $post_types[‘recipe’] ) ) {
unset( $post_types[‘recipe’] ); // Removing a post type
}
return $post_types;
}
add_filter( ‘c2c_admin_post_navigation_post_types’, ‘remove_recipe_apn_post_types’ );
c2c_admin_post_navigation_prev_text (filter)
The ‘c2c_admin_post_navigation_prev_text’ filter allows you to change the link text used for the ‘Previous’ link. By default this is ‘← Previous’.
Arguments:
$text (string) The ‘previous’ link text.
Example:
/**
* Changes the text for the ‘previous’ link to ‘Older’ output by the Admin Post Navigation plugin.
*
* @param string $text The text used to indicate the ‘next’ post.
* @return string
*/
function my_c2c_admin_post_navigation_prev_text( $text ) {
return ‘Older’;
}
add_filter( ‘c2c_admin_post_navigation_prev_text’, ‘my_c2c_admin_post_navigation_prev_text’ );
c2c_admin_post_navigation_next_text (filter)
The ‘c2c_admin_post_navigation_next_text’ filter allows you to change the link text used for the ‘Next’ link. By default this is ‘Next →’.
Arguments:
$text (string) The ‘next’ link text.
Example:
/**
* Changes the text for the ‘next’ link to ‘Newer’ output by the Admin Post Navigation plugin.
*
* @param string $text The text used to indicate the ‘next’ post.
* @return string
*/
function my_c2c_admin_post_navigation_next_text( $text ) {
return ‘Newer’;
}
add_filter( ‘c2c_admin_post_navigation_next_text’, ‘my_c2c_admin_post_navigation_next_text’ );
c2c_admin_post_navigation_display (filter)
The ‘c2c_admin_post_navigation_display’ filter allows you to customize the output links for the post navigation.
Arguments:
$text (string) The current output for the prev/next navigation link
Example:
/**
* Change the markup displayed by the Admin Post Navigation plugin.
*
* @param string $text The text being output by the plugin.
* @return string
*/
function override_apn_display( $text ) {
// Simplistic example. You could preferably make the text bold using CSS.
return ‘‘ . $text . ‘‘;
}
add_filter( ‘c2c_admin_post_navigation_display’, ‘override_apn_display’ );

All texts and images on this product page are protected by copyright and are the property of the author Scott Reilly. You will be redirected to the retailer to download the plugin. We act solely as a search engine for plugins and are not affiliated with the retailer or Scott Reilly.

Tags

Free Plugin

4.5
Reviews
Last Update
6 years ago
All trademarks, logos and brand names are the property of their respective owners. All company, product and service names used in this website are for identification purposes only. The WordPress® trademark is the intellectual property of the WordPress Foundation

Collections

SEO

  • 1 Plugin
  • 1 Views
Yoast SEO

Wordpress

  • 13 Plugins
  • 3 Views
Really Simple Security – Simple and Performant Security (formerly Really Simple SSL)
Forminator Forms – Contact Form, Payment Form & Custom Form Builder
Yoast SEO
Site Kit by Google – Analytics, Search Console, AdSense, Speed

slider

  • 1 Plugin
  • 1 Views
Photo Gallery, Sliders, Proofing and Themes – NextGEN Gallery

Yeer

  • 1 Plugin
  • 3 Views
Autoptimize

Optimisation Plugins

  • 1 Plugin
  • 6 Views
Smush Image Optimization – Optimize Images | Compress & Lazy Load Images | Convert WebP | Image CDN

Best Speed Plugins

  • 4 Plugins
  • 2 Views
LiteSpeed Cache
WP Fastest Cache
WP-Optimize – Cache, Compress images, Minify & Clean database to boost page speed & performance
10Web Booster – Website speed optimization, Cache & Page Speed optimizer

Must-Have Plugins

  • 9 Plugins
  • 52 Views
Elementor Website Builder – More than Just a Page Builder
Yoast SEO
All-in-One WP Migration and Backup
Wordfence Security – Firewall, Malware Scan, and Login Security

Best Security Plugins

  • 3 Plugins
  • 3 Views
Jetpack – WP Security, Backup, Speed, & Growth
Wordfence Security – Firewall, Malware Scan, and Login Security
Solid Security – Password, Two Factor Authentication, and Brute Force Protection

Best Member Plugins

  • 5 Plugins
  • 4 Views
Paid Memberships Pro – Content Restriction, User Registration, & Paid Subscriptions
Ultimate Membership Pro - WordPress Membership Plugin
Ultimate Member – User Profile, Registration, Login, Member Directory, Content Restriction & Membership Plugin
Paid Membership Plugin, Ecommerce, User Registration Form, Login Form, User Profile & Restrict Content – ProfilePress

Best Recruitment Website Plugins

  • 3 Plugins
  • 5 Views
WP Job Openings – Job Listing, Career Page and Recruitment Plugin
Smush Image Optimization – Optimize Images | Compress & Lazy Load Images | Convert WebP | Image CDN
WP Job Manager

Cookie Plugins

  • 3 Plugins
  • 11 Views
CookieYes – Cookie Banner for Cookie Consent (Easy to setup GDPR/CCPA Compliant Cookie Notice)
Autoptimize
Complianz – GDPR/CCPA Cookie Consent

Donation Plugins

  • 2 Plugins
  • 21 Views
Charitable – Donation Plugin for WordPress – Fundraising with Recurring Donations & More
GiveWP – Donation Plugin and Fundraising Platform

Translation

  • 2 Plugins
  • 25 Views
Linguise – Automatic multilingual translation
Translate WordPress with GTranslate

Gamification

  • 3 Plugins
  • 5 Views
Points and Rewards for WooCommerce – Create Loyalty Programs, Reward Customer Purchases, Point Rewards, Referral Points, Reward for Points, User Badges, and Gamification
myCred – Loyalty Points and Rewards plugin for WordPress and WooCommerce – Give Points, Ranks, Badges, Cashback, WooCommerce rewards, and WooCommerce credits for Gamification
GamiPress – The #1 gamification plugin to reward points, achievements, badges & ranks in WordPress

test

  • 1 Plugin
  • 1 Views
Autoptimize