大家都知道,我们在后台发布文章后再次编辑时,所选的分类会显示在分类目录列表的顶部,这样不方便我们查看其树状结构(也就是分类层级关系),那么如何能不让所选分类显示在顶部呢,还是像默认那样呈现树状层级关系。
可以使用以下代码:
class Category_Checklist {
static function init() {
add_filter( 'wp_terms_checklist_args', array( __CLASS__, 'checklist_args' ) );
}
static function checklist_args( $args ) {
add_action( 'admin_footer', array( __CLASS__, 'script' ) );
$args['checked_ontop'] = false;
return $args;
}
// Scrolls to first checked category
static function script() {
?>
<script type="text/javascript">
jQuery(function(){
jQuery('[id$="-all"] > ul.categorychecklist').each(function() {
var $list = jQuery(this);
var $firstChecked = $list.find(':checkbox:checked').first();
if ( !$firstChecked.length )
return;
var pos_first = $list.find(':checkbox').position().top;
var pos_checked = $firstChecked.position().top;
$list.closest('.tabs-panel').scrollTop(pos_checked - pos_first + 5);
});
});
</script>
<?php
}
}
Category_Checklist::init();
有人会问,那如果分类多了的话,编辑文章时岂不是还得找所选分类?不是的,上面代码会自动定位到所选分类的位置。


0 个评论