Архив sort Dropdown menu Frontend

Есть в редакторе архива произвольное поле с сортировкой вывода постов

Далее уже в query запросе подставляю нужные данные

Хочу вывести для пользователей такую менюшку. Как лучше это сделать?? Посмотрел через $_GET запросы в URL, не понравилось.

Кто как делает? Поделитесь опытом. Лично намерен куки в код обязательно включать. Так же есть задумка для пользователей добавить в базу данных отдельную запись с сохранением всех сортировок на сайте, а там разделение приоритетов сортировки из : (куки | кастом | usermeta).

Заметки к вопросу:
kolshix 11 месяцев назад

Пока что решил так, сейчас функционала достаточно

<?php
	$cat_id = 'текущая категория'; 
	$show_ppp_val = 0;

	if ( is_user_logged_in() || current_user_can('manage_options')  ) { 
		$user_id_ppp = get_current_user_id();   
		$show_ppp_arr = get_user_meta( $user_id_ppp, 'show_ppp', true );                
		$show_ppp_val = $show_ppp_arr[ $cat_id ];               

		if ( isset( $_POST['show_ppp'] ) ) { 
			// Выбрано стандартное значение 
			if ( $_POST['show_ppp'] == 0 ) {
				unset( $show_ppp_arr[ $cat_id ] );
			// Выбрано кастомное значение - проверка перед обновлением БД 
			} else {
				if ( in_array( $_POST['show_ppp'] , array('60','70','80','90','100') )) {
					$safe_val = $_POST['show_ppp'];
				} else {
					exit( 'ERROR' );
				}
				$show_ppp_arr[ $cat_id ] = $safe_val;
			}                   

			update_user_meta( $user_id_ppp, 'show_ppp', $show_ppp_arr ); 

			$show_ppp_val = $safe_val;
		}                   

	}

	if ( $show_ppp_val > 50 ) {
		$show_ppp = $show_ppp_val;
	} else {    
		$show_ppp = 50;
	}
	query_posts(array(
		'cat'            => $cat_id,    
		'order'          => 'ASC', // сортировка от первого до последнего 1 2 3     
		'meta_key'       => $meta_key,
		'orderby'        => $orderby , //    none, ID, author, title name(slug), type, date, rand
		'paged'          => $paged,
		'posts_per_page' => $show_ppp
	));

				?>
<form action="" method="post" style="display: inline-block;">
		Количество:
		<select id="animal" name="show_ppp">                      
		  <option value="0"   <?php selected( $show_ppp_val, '0' )?>  >-- Стандартно --</option>
		  <option value="60"  <?php selected( $show_ppp_val, '60' )?> >60</option>
		  <option value="70"  <?php selected( $show_ppp_val, '70' )?> >70</option>
		  <option value="80"  <?php selected( $show_ppp_val, '80' )?> >80</option>
		  <option value="90"  <?php selected( $show_ppp_val, '90' )?> >90</option>
		  <option value="100" <?php selected( $show_ppp_val, '100' )?>>100</option>
		</select>
		<input type="submit" value="Set" class="updppp">
</form>