为了避免命名问题,我决定尝试在提交时更改 url slug,方法是附加一个“unique-to-taxonomy”后缀。
做这样的事情的钩子是什么?它将如何使用?
我确实找到了解决问题的好方法:
问题:Like-slug 会发生冲突并在不同的分类中产生 404。我的主题是非常重的关键字和类别,我的用户并不是非常精通wordpress。所以不能允许冲突。
在自定义税收区域或自定义发布区域中提交新类别后,分类将更改为自定义分类和防冲突的唯一分类
function symbiostock_unique_category( $term_id, $tt_id, $taxonomy )
{
if ( $taxonomy == 'image-type' ) {
if ( isset( $_POST[ 'slug' ] ) && !empty( $_POST[ 'slug' ] ) ) {
$name = sanitize_title( $_POST[ 'slug' ] ) . '-images';
} elseif ( isset( $_POST[ 'tag-name' ] ) && !empty( $_POST[ 'tag-name' ] ) ) {
$name = sanitize_title( $_POST[ 'tag-name' ] ) . '-images';
} elseif ( isset( $_POST[ 'newimage-type' ] ) && !empty( $_POST[ 'newimage-type' ] ) ) {
$name = sanitize_title( $_POST[ 'newimage-type' ] ) . '-images';
}
wp_update_term( $term_id, $taxonomy, array(
'slug' => $name
) );
}
}
add_action( 'create_term', 'symbiostock_unique_category', 10, 3 );