Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Some links on this page are affiliate links: if you buy through them we may earn a commission, at no extra cost to you.

To change how WordPress categories appear, either sort a specific category list with query arguments or use a taxonomy-ordering plugin to save a reusable drag-and-drop order. WordPress core does not provide a universal drag-and-drop category-order screen. The right method depends on whether you want an alphabetical list, a custom sequence of category terms, or a different order for posts within a category archive.

Choose what you want to reorder

“Category order” can mean two different things: the sequence of category terms in a list, or the sequence of posts displayed on a category archive. They are controlled by different queries. The methods below change term lists; they do not, by themselves, change the order of posts inside an archive.

  • Alphabetical or other standard term sort: change the arguments used to retrieve the categories.
  • A saved custom term sequence: use a taxonomy-ordering plugin, or implement a site-specific developer solution.
  • Posts within an archive: adjust the post query, not the category-term order.

Sort categories by name or another query property

For a category list generated by code, pass sorting arguments to get_categories() or get_terms(). WordPress documents that get_categories() retrieves category objects and accepts the arguments available to get_terms(). Its example sorts by name in ascending order:

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
$categories = get_categories( array(
    'orderby' => 'name',
    'order'   => 'ASC',
) );

ASC means ascending; use DESC for descending order. This is a query rule, not a saved manual arrangement. It affects only the list generated by the query whose arguments you changed. A category menu, a widget, a page-builder element, and a custom theme list may each retrieve terms differently.

The Categories REST API also supports orderby and order parameters for its category collection. If an external app consumes that endpoint, configure its request rather than assuming a change to a theme’s PHP query will affect it.

Save a custom drag-and-drop category order

For an editor-managed sequence that can be reused, the WordPress.org plugin Category Order and Taxonomy Terms Order describes a Taxonomy Order admin screen for dragging taxonomy terms into position, including parent-and-child hierarchy. Its listing also describes an Autosort option that applies the saved order to front-end queries.

  1. Install and activate the plugin from the WordPress plugin directory.
  2. Review its settings and locate its Taxonomy Order screen. The plugin listing describes a link in the relevant post-type section; exact placement can vary as the interface changes.
  3. Drag categories into the desired sequence, preserving or adjusting parent-child placement as appropriate.
  4. If you want the order applied to front-end queries, check the plugin’s Autosort setting and then inspect the actual lists on your site.

A custom query that you maintain in code may need to request the plugin’s documented term-order field explicitly, as shown below.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
$categories = get_terms( array(
    'taxonomy' => 'category',
    'orderby'  => 'term_order',
    'order'    => 'ASC',
) );

Use this only where the plugin’s term-ordering feature is installed and the query supports it. The plugin directory listing documents term_order for programmatic get_terms() use; it is not a general WordPress-core category field.

Use custom code when the ordering logic is site-specific

If you control the term query, pass its intended arguments directly to get_terms() or get_categories(). For more specialized ordering, WordPress provides the get_terms_orderby filter, which lets code modify the ORDERBY clause of a term query.

The filter is an extension point, not a ready-made category-order recipe. A callback must be designed for the relevant taxonomy, query, and ordering rule, then tested against the site’s output. Avoid inserting a generic callback without checking how it interacts with other plugins and queries.

Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Why menu_order does not reorder categories

menu_order is a post-ordering value documented by WordPress for WP_Query, commonly used for pages and attachments. A category is a taxonomy term, not a post, so its order is not controlled by that post field. WordPress.org support documentation likewise distinguishes taxonomy terms from native post menu_order; the plugin described above provides its own term-ordering approach.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

If the real goal is to change which posts appear first on a category archive, change the archive’s post query instead. Reordering the category terms in a list will not determine the order of posts inside each category.

Check which displays actually changed

After changing a query or enabling plugin sorting, inspect each relevant part of the site: the theme’s category list, widgets, navigation or page-builder output, and any external REST API consumer. A theme, widget, custom query, or builder can retrieve categories independently, so one adjustment does not guarantee that every category display uses the same ordering.

Approach Ordering rule Scope Who maintains it
orderby and order query arguments A standard property such as name, in ascending or descending order The specific term list or REST request using those arguments Developer or interface configuring that query
Category Order and Taxonomy Terms Order plugin Editor-defined drag-and-drop sequence; the listing describes Autosort for front-end queries Plugin-supported term ordering; check individual site displays Editors manage sequence in the plugin; site owners maintain plugin settings and compatibility
get_terms_orderby filter Custom ORDERBY logic defined in code Term queries affected by the callback Developer maintaining and testing the callback

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.