Intereting Posts
Facebook не берется правильно og: Изображение WordPress sharding: какой мульти-DB-плагин использовать? Выбрать из wpdb – страницу автора / каталога пользователей Программно менять шаблоны сообщений? Пользовательский тип разбивки по типу на Single.php? Сравнение запросов метаданных по запросу WQ Передняя часть пуста (т.е. ничего не отображается); Задний конец выглядит хорошо; Каковы возможные причины? Невозможно получить любые дочерние термины с помощью get_terms Я не могу получить разбивку на страницы, чтобы работать над кодом моей домашней страницы. он продолжает отображать те же сообщения Отключить ссылки на изображения, только если ссылка – это изображение Удалить знаки продажи с сайта в фирменном стиле? Почему в представлении страницы WordPress по умолчанию не используется force_balance_tags? Получайте изображение вне цикла, используя foreach Media Modal Добавить еще одну кнопку Как найти код, выполняемый при вызове wp_head ()?

Начать таксономию из пользовательских сообщений

У меня есть пользовательский пост, который я хочу классифицировать с помощью пользовательской таксономии. В самой таксономии я хочу быть зависимой от элементов другого пользовательского типа сообщения. Можно ли заполнить таксономию через элементы пользовательского типа сообщений, или это то, что мне нужно сделать вручную?

Приветствуются плагины, фрагменты, руководство по альтернативным методам подхода.

ИЗМЕНИТЬ С ПРИМЕРОМ:

У меня есть пользовательский тип сообщения, который в основном действует как страница. Когда я его создаю, я хочу, чтобы он заполнил пользовательскую таксономию своим названием. Ответ Даниэля Дворкина – это то решение, о котором я думал.

Solutions Collecting From Web of "Начать таксономию из пользовательских сообщений"

Я всегда использую что-то вроде:

add_action('save_post', 'mdz_correlate_casos_taxonomy'); function mdz_correlate_casos_taxonomy( $post_id ){ if ( defined('DOING_AUTOSAVE') && DOING_AUTOSAVE ) return $post_id; if ( 'YOUR CUSTOM POST TYPE' == $_POST['post_type'] ){ if (!wp_is_post_revision($post_id)){ if (!term_exists( $_POST["post_title"], 'YOUR CUSTOM TAXONOMY' )){ $termid = wp_insert_term( $_POST["post_title"], 'YOUR CUSTOM TAXONOMY' ); } } } } 

Но это подвержено противоречивости (например: если вы удаляете сообщение, этот термин не будет удален)

Чтобы следить за ответом @ MZAweb. Вы также можете автоматически удалить этот термин:

 add_action( 'before_delete_post', 'cpk_delete_term' ); function cpk_delete_term( $post_id ) { $post = get_post( $post_id ); if ( term_exists( $post->post_title, 'YOUR_TAXONOMY_NAME' ) ) { $term = get_term_by( 'name', $post->post_title, 'YOUR_TAXONOMY_NAME' ); wp_delete_term( $term->term_id, 'YOUR_TAXONOMY_NAME' ); } } 

Обратите внимание, что мы не делаем проверку для типа сообщения здесь, потому что это не в объекте post при попытке получить эту информацию (по какой-либо причине).