By default WordPress category archives are sorted by date. This is fine when you’re publishing a blog but if you’re using WP for other reasons you might want to adjust the way the archives are sorted. This is done rather easily by creating a new filter in your functions.php file like this:
//filter to alphabetically sort category archives add_filter('posts_orderby','sort_category_archive_alphabetically');
And then creating a new sort function like this:
function sort_category_archive_alphabetically($orderby ) { if (is_category()) { return "post_title ASC"; } return $orderby; }
In this example I’m alphabetically sorting all categories. You could restrict it to a specific category by changing the is_category() call to include a category ID (is_category(8)) or by including a category name (is_category(‘Your Category Name’)).
I’m doing a simple sort by post_title here but more complex sorts are possible. For example, the WordPress API gives a more complex example that explains how to do a LEFT JOIN in the SQL to select posts and sort by values in tables other than the WP_POSTS table.