我的网站上有一个小表单,我使用Jetpack插件创建(它有内置的联系表单创建者)。
我想从我的自定义帖子类型“artist
”中提取选择输入的选项(使用帖子的标题)。有办法吗?
[contact-field label='Artist' type='select' required='1' options='i want my titles go here separated by commas plus "other" option'/]
该字段的代码如下所示。我相信我需要在这个页面模板中做一些php + jquery的东西,但我似乎无法得到它。
答案 0 :(得分:3)
有了一些创造力,是的,有可能:)
我们创建另一个Shortcode来创建“虚拟”JetPack短代码。
我使用默认的post post_type测试了这个。
add_shortcode( 'my-jet-form', 'so_14003883_jet_form' );
function so_14003883_jet_form( $atts, $content )
{
// Query our post type, change accordingly
$posts = get_posts( array(
'post_type' => 'post',
'numberposts' => -1,
'post_status' => 'publish'
) );
// Build an array of post titles
$titles = array();
foreach( $posts as $post )
{
$titles[] = $post->post_title;
}
// Convert array into comma sepparated string
$posts_select = implode( ',', $titles );
// Make JetPack shortcode
$return = do_shortcode( '[contact-form][contact-field label="Name" type="name" required="1"/][contact-field label="Artist" type="select" options="' . $posts_select . '"/][/contact-form]' );
return $return;
}
用法:
do_shortcode
部分以适合您的原始短代码[my-jet-form]
放在任何您想要的地方