javascript - 在wordpress中联系表格7如何在正文中包含javascript src

标签 javascript wordpress plugins contact-form-7

我正在使用 wordpress 和 contact form 7 插件。 我想要完成的是一些下拉菜单填充了自定义 javascript,我知道您可以将它包含在另一个插件“Scripts and Stuff”中。但我想把它放在一个单独的文件中,并使用脚本 src="http://example.org/myscript.js"(使用插件创建的实际表单)将该文件包含在联系表单的正文标签中

编辑:我不想将它添加到主题的 footer.php 中,我希望脚本 src 仅位于单个页面上。不是整个主题

最佳答案

当然,这很简单。有两种方法可以实现这一点,

  1. 您可以插入 <script>with your js code</script>在 cf7 表单编辑器中表单的底部,这样脚本仅在页面上打印表单时加载。但是,请确保您没有在 js 代码中添加任何新行空格,否则 cf7 插件将插入空的 <p></p>。元素,这将在执行时破坏您的代码。或者,
  2. 如果您运行的是 WP4.7,您现在可以使用 do_shortcode_tag 此版本中引入了该功能,以实际将您的脚本排入与打印表单相同的页面上,但请记住先更早地注册该脚本,

    add_filter('wp_enqueue_scripts', 'register_my_script');
    function register_my_script(){
      wp_register_script( 'my-script', get_stylesheet_directory_uri() . 'js/my-script.js', array( 'jquery' ), "1.0" , false );
    }
    add_filter('do_shortcode_tag', 'enqueue_my_script',10,3);
    function enqueue_my_script($output, $tag, $attr){
      if('contact-form-7' != $tag){ 
        return $output; //make sure we filter cf7 shortcodes
      }
      if(isset($attr['id']) && '4' == $attr['id']){
        wp_enqueue_script('my-script'); //enqueue if it is form id=4
      }
      return $output;
    }
    

关于javascript - 在wordpress中联系表格7如何在正文中包含javascript src,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42079247/

相关文章:

javascript - 从 Controller 传递的变量的默认值, Angular 文本框中的 ng-init 未显示

javascript - 并未处理所有循环,13200 个循环中仅处理了 5655 个循环

Javascript 如何创建在另一个文件或 Javascript block 中创建的字典的新对象

CSS - 令人沮丧的菜单项 "selected_page"

javascript - 如何让按钮填充 Wordpress 中 Mailchimp 弹出表单的模式

html - 第 n 个子选择器不适用于 Wordpress 主题

javascript - Nodejs 请求返回行为不当

javascript - 新的 jQuery 插件 - 获取输入和反馈的最佳方式是什么?

java - 如何在 Windows 中使用 File.separator

plugins - 如何访问插件生成器中的数据文件?