Intereting Posts
Добавление идентификатора в список, но не внутри WP_Query, а Загружает папку, в которой отображаются только файлы до буквы «P» Когда я должен использовать отображаемое значение над сыром в аргументе фильтра для get_bloginfo? Конвертировать WordPress.com вставлять ссылки на обычные вложения Посты загрузки Ajax через категорию Двойные префиксы таблицы WordPress mysql Собственный плагин блокирует активацию плагина Шаблон страницы с разным содержимым страницы и сообщения Создать домашнюю страницу, например WordPress.com? Как получить доступ к каждому пункту меню в WordPress? Как использовать wp_remote_get вместо file_get_contents? PHPmailer не работает с момента обновления! Почему появляется <li class = "default-menu">? Я пытаюсь удалить общую ссылку под названием navigation on my main menu Постоянная ссылка показывает мусорный характер Как я могу получить полный html-источник сообщения по его идентификатору?

Короткое обозначение динамической таксономии многократного использования

Хорошо, я потратил много времени, пытаясь понять это и часы в Google, но я просто не могу показаться, что это динамично. У меня есть короткий код, который выплескивает неупорядоченный список терминов taxnonomy, связанных с моим настраиваемым типом сообщений, но в настоящее время мне приходится копировать и вставлять для каждого таксономического термина, который я хочу показать. Я пытаюсь выяснить, как сделать его динамичным, так как я могу просто использовать один и тот же короткий код и просто «перейти» к другому термину таксономии.

function list_bar_location_taxonomy( $atts ) { global $post; $taxonomy = 'location'; $locations = get_the_terms( $post->ID, $taxonomy ); if ( ! empty( $locations ) && ! is_wp_error( $locations ) ) { $output = '<ul class="location-meta">'; foreach( $locations as $location ) { $output .= '<li>'; $output .= $location->name . '</li>'; } $output .= '</ul>'; } return $output; } add_shortcode( 'bars_location', 'list_bar_location_taxonomy' ); 

Я хочу, чтобы таксономический термин «местоположение» был взаимозаменяемым, поэтому я могу передать любую таксономию, которая будет использоваться и отображаться в интерфейсе. например taxterm2, taxterm3 и т. д.

Я пробовал следующее безрезультатно:

 function list_bar_location_taxonomy( $atts ) { $atts = shortcode_atts( array( 'custom_taxonomy' => ' ' ), $atts ); global $post; $locations = get_the_terms( $post->ID, $atts[ 'custom_taxonomy' ] ); if ( ! empty( $locations ) && ! is_wp_error( $locations ) ) { $output = '<ul class="location-meta">'; foreach( $locations as $location ) { $output .= '<li>'; $output .= $location->name . '</li>'; } $output .= '</ul>'; } return $output; } add_shortcode( 'bars_location', 'list_bar_location_taxonomy' ); 

Любое понимание того, что я делаю неправильно, будет с благодарностью. Благодарю.

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

 function custom_taxonomy_list_shortcode( $atts ) { $atts = shortcode_atts( array( 'term' => 'location', //Set whatever default taxonomy you like ), $atts ); global $post; $custom_taxonomy = $atts['term']; // Assign it to a var $terms = get_the_terms( $post->ID, $custom_taxonomy ); if ( ! empty( $terms ) && ! is_wp_error( $terms ) ) { $output = '<ul class="cpt-term-list">'; foreach( $terms as $term ) { $output .= '<li>'; $output .= $term->name . '</li>'; } $output .= '</ul>'; } return $output; } add_shortcode( 'term-list', 'custom_taxonomy_list_shortcode' ); add_filter('widget_text', 'do_shortcode');