我使用面向对象的方法来完成创建CPT及其元框的所有工作。出于管理样式的目的,我想为特定的自定义帖子类型做一些更重的样式。My object方法创建以下HTML结果:
<div id="client_info" class="postbox ">
<button type="button" class="handlediv" aria-expanded="true"><span class="screen-reader-text">Toggle panel: Client Info</span><span class="toggle-indicator" aria-hidden="true"></span></button>
<h2 class=\'hndle\'><span>Client Info</span></h2>
<div class="inside">
<label for="client_info_client_first_name">Client First Name</label>
<input type="text" name="custom_meta[client_info_client_first_name]" id="client_info_client_first_name" value="" />
<label for="client_info_client_last_name">Client Last Name</label>
<input type="text" name="custom_meta[client_info_client_last_name]" id="client_info_client_last_name" value="" />
<label for="client_info_client_age">Client Age</label>
<input type="number" name="custom_meta[client_info_client_age]" id="client_info_client_age" value="" />
</div>
</div>
我要做的是向<div>
元素,以便class
属性类似于:class="postbox my-class"
我试过使用add_filter()
为了做到这一点,但问题是我能找到的唯一相关挂钩是postbox_classes_{$page}_{$id}
我想让我的对象的方法来处理注册过滤器的问题,但我不知道如何使其成为动态的。我已尝试将串联用于.
和Herdeoc风格:
function meta_box_add_class( $classes ) {
array_push( $classes, \'jldc-fitcase-meta\' );
return $classes;
}
add_filter( \'postbox_classes_custom-post-type_\' . $box_id, \'meta_box_add_class\' );
add_filter( \'postbox_classes_custom-post-type_{$box_id}\', \'meta_box_add_class\' );
是否有一种方法可以在创建每个metabox时动态添加此挂钩?