将多个输入发布到POST_CONTENT的表单

时间:2014-02-19 作者:KJThaDon

我有一个表单,有多个输入,我正试图将其发布到wordpress的“post\\u content”。只有在将字段名改为“description[]”而不是“description[]”时,我才能成功获取标题字段和另一个字段,但我不知道如何将其余字段提交到post\\u内容中。我想输入张贴像我在下面创建的图像。

enter image description here

这是我目前拥有的代码,它只适用于标题。

1 个回复
SO网友:Aurovrata

我不确定您使用的是哪种表单插件,但实现这一点的一种方法是使用Contact Form 7 表单插件和扩展插件Post My CF7 Form. 它允许您在将表单提交映射到自定义帖子时触发过滤器,然后您可以创建一个挂接在过滤器上的自定义函数,以便根据需要将所有字段映射到帖子内容。

联系人表单7允许您为表单创建各种字段并进行布局。然后使用shortcode. 所以假设您将字段命名为field-1, field-2, field-3, 和atitle 文章标题字段。您可以使用扩展插件映射表单,通过将标题字段映射到自定义帖子标题,并从帖子内容的下拉选项中选择过滤器选项,这将创建一个新过滤器,您可以使用functions.php 主题文件夹中的文件,

    //assuming that your mapped custom post type is my-cpt
    add_filter(\'cf7_2_post_filter-my-cpt-editor\',\'filter_my-cpt_content\',10,3);
    function filter_my-cpt_content($value, $post_id, $form_data){
      //$value is the post field value to return, by default it is empty
      //$post_id is the ID of the post to which the form values are being mapped to
      // $form_data is the submitted form data as an array of field-name=>value pairs
      $value = \'<div id="form-field-content">\';
      if(isset($form_data[\'field-1\']){
        $value .= \'<p>Field: \'. $form_data[\'field-1\'] . \'</p>\';
      }
      if(isset($form_data[\'field-2\']){
        $value .= \'<p>Field: \'. $form_data[\'field-2\'] . \'</p>\';
      }
      if(isset($form_data[\'field-3\']){
        $value .= \'<p>Field: \'. $form_data[\'field-3\'] . \'</p>\';
      }
      $value .= \'<div/>\';
      return $value;
    }
这将用3个字段填充您的内容。

结束

相关推荐

POSTS_NAV_LINK();不显示在静态页面上

我有两个不同的循环。主页上的默认值,但存档页面上的二次循环。它抓住了所有的内容,就像这样:<?php // WP_Query arguments $args = array ( \'posts_per_page\' => \'3\' ); // The Query $archiveQuery = new WP_Query( $args ); // The Loop if ( $archiveQuery-&