EDIT
When you decided to unaccept my answer and change your question in the comments to my answer I was already in bed. Please consider @kaiser comment next time when asking a question.
For the purpose of my answer, here is your comment
i am having problem.. actually i want to show order by alphabet . like
A B C….but it not working that way. any idea how$query->set( ‘orderby’,’title’, ‘order’, ‘ASC’ ); not work
You cannot pass two arguments to $query->set
. You need to add each argument separately, so to achieve your goal, this is how your code will look like
function wpse_asc_cat_pages( $query ) {
if ( $query->is_category() && $query->is_main_query() ) {
$query->set( 'orderby', 'title' );
$query->set( 'order', 'ASC' );
}
}
add_action( 'pre_get_posts', 'wpse_asc_cat_pages' );
ORIGINAL ANSWER
You can achieve this by simply using pre_get_posts
This code goes in to your functions.php. This function checks whether you are on a category page and if this is the main query, and if both exists, it orders the posts ASC
function wpse_asc_cat_pages( $query ) {
if ( $query->is_category() && $query->is_main_query() ) {
$query->set( 'order', 'ASC' );
}
}
add_action( 'pre_get_posts', 'wpse_asc_cat_pages' );