使用CMB2插件的元框上的复选框

时间:2017-08-01 作者:The WP Intermediate

我有ADDED 借助CMB2插件,使用oembed的视频元框。这是代码→

$cmb->add_field( array(
    \'name\' => (\'oEmbed\'),
    \'desc\' => \'Enter a youtube, twitter, or instagram URL. Supports services listed at <a href="http://codex.wordpress.org/Embeds">http://codex.wordpress.org/Embeds</a>.\',
    \'id\'   => $prefix . \'video_id\',
    \'type\' => \'oembed\',
    ) );
并将其打印在主题中。我是echoing 就像这样→

<?php
    $url = esc_url( get_post_meta( get_the_ID(), \'_the_video_id\', 1 ) );
    echo wp_oembed_get( $url );
?>
但我想要的是在上面的元框中(using oembed) 应该有一个checkbox.

我应该能够提出一个条件→

If (checkbox==true) {
      <?php
          $url = esc_url( get_post_meta( get_the_ID(), \'_the_video_id\', 1 ) );
          echo wp_oembed_get( $url );
    ?>
{

$cmb->add_field( array(
    \'name\'             => \'Select Video or Image\',
    \'desc\'             => \'Select an option\',
    \'id\'               => $prefix . \'image_or_video\',
    \'type\'             => \'select\',
    \'show_option_none\' => true,
    \'default\'          => \'custom\',
    \'options\'          => array(
        \'standard\' => __( \'Option One\', \'cmb2\' ),
        \'custom\'   => __( \'Option Two\', \'cmb2\' ),
        \'none\'     => __( \'Option Three\', \'cmb2\' ),
    ),
) );
请帮助我实现这一目标→

If Option chosen is Option 2 {
Execute some PHP code
}
我的问题我该怎么写→ 如果Option chosen 选项2是否在编程方面?

1 个回复
最合适的回答,由SO网友:PayteR 整理而成

如果我做对了,那么您只需要从post-meta中获取该值,并生成条件。

$image_or_video = get_post_meta($post_id, $prefix . \'image_or_video\', true);

// Option 2 is selected
if( \'custom\' === $image_or_video ){
 //Then execute some PHP code
}

结束

相关推荐

当限制为特定CPT时,自定义Metabox字段不保存

我有一系列的CPT,每个都有自己的自定义元数据库。它们都工作得很好——在应该展示的地方展示,省去了应该怎样做。但我发现的一个问题是,他们也都在每个管理页面上运行他们的查询(下拉菜单等),而且有很多。我将metabox选项的代码部分包装在条件代码中:function set_options() { parent::set_options(); global $pagenow; if ( \'post-new.php\' == $pagenow || \'post.php\' == $