WordPress установил термин таксономии по умолчанию при публикации

Есть ли способ, если вы публикуете сообщение без проверки таксономии, чтобы контролировать, какой термин по умолчанию?

У меня есть таксономия, называемая посттипами и терминами: загрузки, ссылки и пост в блоге. Мне нужно, чтобы по умолчанию это было в блоге, если сообщение опубликовано без проверенного термина. По умолчанию для загрузки.

Я пытался использовать это:

http://wordpress.mfields.org/2010/set-default-terms-for-your-custom-taxonomies-in-wordpress-3-0/

/**
* Define default terms for custom taxonomies in WordPress 3.0.1
*
* @author    Michael Fields     http://wordpress.mfields.org/
* @props     John P. Bloch      http://www.johnpbloch.com/
* @props     Evan Mulins        http://circlecube.com/
*
* @since     2010-09-13
* @alter     2013-01-31
*
* @license   GPLv2
*/
function mfields_set_default_object_terms( $post_id, $post ) {
if ( 'publish' === $post->post_status ) {
$defaults = array(
'posttypes' => array( 'blog-post' )
);
$taxonomies = get_object_taxonomies( $post->post_type );
foreach ( (array) $taxonomies as $taxonomy ) {
$terms = wp_get_post_terms( $post_id, $taxonomy );
if ( empty( $terms ) && array_key_exists( $taxonomy, $defaults ) ) {
wp_set_object_terms( $post_id, $defaults[$taxonomy], $taxonomy );
}
}
}
}
add_action( 'save_post', 'mfields_set_default_object_terms', 100, 2 );

Но это не похоже на работу.

0

Решение

function mfields_set_default_object_terms( $post_id, $post ) {
if ( 'publish' === $post->post_status ) {
$defaults = array(
'posttypes' => array( 'blog-post' )
-1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]