Intereting Posts
Вызов функции PHP не работает в index.php Мне нужно сохранить register_post_type в functions.php? использование html в качестве атрибута shortcode Загружать носители с другого URL-адреса на многоузловой установке Переопределение родительской темы … вызовет сбой плагинов? Невозможно установить плагины после обновления до WordPress 4.9 Как проверить, нет ли у виджета заголовка Сообщения и страница дважды отображаются Как отображать пользовательский метабокс только на конкретных идентификаторах страниц Помощь с is_page () и вызов css для определенных страниц в дочерней теме Каков правильный / эффективный способ обновления тегов WordPress Post через REST API? Как получить текст Alt вложений приложения? Правило перезаписи работает только с префиксом перед первым совпадением Как отобразить отфильтрованное сообщение типа $ title даже при пустых результатах поиска? Избегайте обновления темы, только одна тема

Переиздание списков пользовательских таксономических списков

Я пытаюсь показать список терминов из моей категории работы. Я попробовал следующее:

function job_listing_taxonomy_list( $taxonomy,$hide ) { $args = array('order'=>'ASC','hide_empty'=>$hide); $terms = get_terms( $taxonomy, $args ); if ( $terms ) { printf( '<ul name="%s">', esc_attr( $taxonomy ) ); foreach ( $terms as $term ) { printf( '<li><a href="http://example.com/?s=&'.$taxonomy.'=%s">%s</a></li>', esc_attr( $term->slug ), esc_html( $term->name ) ); } print( '</ul>' ); } } 

Однако, когда я нажимаю ссылку на одно из выражений, которые генерируются, например:

 http://example.com/?s=&job_listing_category=finance 

он изменяется на:

 http://example.com/?s?job_listing_category=finance 

Почему = & меняется на '?' ? Я потратил полчаса, расчесывая Google и этот сайт для ответов, но я не совсем уверен, что даже искать! На стороне примечание, у меня был пользовательский Post Type Permalink Rewrite плагин, установленный ранее, который вызвал ошибку строгих стандартов, но после его отключения (оказывается, я все равно не использовал его), теперь я получаю эту ошибку ….

Какие-либо предложения?

Изменить: я попытался заменить & с &, но это не помогло

Solutions Collecting From Web of "Переиздание списков пользовательских таксономических списков"

После учета комментариев @Milo, я удалил аргумент s= из ссылки, и он сработал!

Это мой последний код:

 function job_listing_taxonomy_list( $taxonomy,$hide ) { $args = array('order'=>'ASC','hide_empty'=>$hide); $terms = get_terms( $taxonomy, $args ); if ( $terms ) { printf( '<ul name="%s">', esc_attr( $taxonomy ) ); foreach ( $terms as $term ) { printf( '<li><a href="%s/?'.$taxonomy.'=%s">%s</a></li>', site_url() ,esc_attr( $term->slug ), esc_html( $term->name ) ); } print( '</ul>' ); } } 

Разница в том, что я удалил аргумент s= и добавил site_url() чтобы не менять его, когда сайт перемещается на живой сервер.

Единственная причина, по которой у меня была s= там, в первую очередь, было то, что я адаптировал URL-адрес поиска из своей строки поиска, и поэтому в своем понимании я предположил, что для функционирования ему нужно s= там. Очевидно, нет!