php - 如何将 cmb2 限制为特定页面模板
问题描述
我希望 cmb2 显示在具有电影模板的帖子中,我使用以下代码:
$cmb_review = new_cmb2_box( array(
'id' => $prefix . 'metabox',
'title' => __( "My title", 'cmb2' ),
'object_types' => array( 'post'),
'show_on' => array( 'key' => 'page-template', 'value' => 'movie.php' )
));
但这不起作用
我也试过这段代码,但没有用:
function maybe_show($cmb_review ) {
$template = get_post_meta( $cmb_review ->object_id(), 'page-template', true );
if ( 'movie.php' === $template ) {
return true;
}
return false;
}
$cmb_review = new_cmb2_box( array(
'id' => $prefix . 'metabox',
'title' => __( "My title", 'cmb2' ),
'object_types' => array( 'post'),
'show_on_cb' => 'maybe_show'
));
解决方案
您的元框对象类型是帖子,您的模板页面也是帖子吗?
确保两者匹配。
推荐阅读
- angular - 如何使用 NS 7 和 Angular 10 解决 nativescript-google-maps-sdk 问题
- python - GitHub Actions 访问多个 tox 运行之间的 python 包工件
- installation - 如何使完成时的启动复选框在 InstallShield 6.0 中正常运行?
- python-3.x - 如何使用 numpy.save 有效地更新文件数据?
- rust - 解析一个整数,忽略任何非数字后缀
- python - 尝试在使用字典理解从 csv 转换字典后打印出字典的键
- vb.net - 有没有办法根据 TrackBar 中的值范围指示 if-then 语句?(VB.NET)
- php - snapchat login kit web:无效授权,无效代码验证器
- reactjs - 如何避免单个反应原生组件中的多重渲染
- docker - 构建 docker 映像失败,无法获取匿名令牌,TLS 握手超时