2014-10-28 72 views
0

我一直在慢慢熟悉自学一些关于编码的简单方面。现在,我想将一段JS代码上传到单个页面上。以下是我想要使用的代码的一些背景:插入JS代码片段到WP站点

代码将在一页上显示。这个页面是一个表单页面,如果有人除了按下“提交”按钮之外,某个模块会弹出一些问题。我一直在使用wordpress。任何想法,指导等都是完美的!

<script> 
      var config = new Object(); 
      config.surveyID = 3160325; 
      /*config.animationMode = 0;*/ 
      config.takeSurveyURL = 'http://www.surveyanalytics.com/a/TakeSurvey'; 
      config.windowPositionLeft = 200; 
      config.windowPositionTop = 300; 
      config.home = 'http://www.surveyanalytics.com/'; 
      config.isRightToLeft = false; 
      config.surveyStartMessage = 'Start Survey'; 
      config.popupInvitationLaterMessage = 'Later'; 
      config.showFooter = true; 
      config.invitationDelay = 0; 
      config.skipCount = 0; 
      config.popupMode = 0; 
      config.expirationTime = 60 
       window.onbeforeunload = function() { 
         QP_popupMain(); 
       }; 
     </script> 

     <script language="javascript" type="text/javascript" src="http://www.surveyanalytics.com//javascript/exitSurveyInvitation.js"></script> 
      <noscript> 

      <a href="http://www.supporterfeedback.org/a/TakeSurvey?id=3160325">Start Survey</a> <a href="http://www.surveyanalytics.com/">Survey</a> 

      </noscript> 

回答

0

由于WordPress的不喜欢的functions.php内<script>标签,而不是把你的代码放到一个“的.js”文件和注册脚本中的functions.php,然后排队在你的简码。

在你functions.php文件:

add_action('wp_enqueue_scripts', 'register_my_script'); 

function register_my_script() { 
    //This example puts it in plugins, but you can put it in your theme instead 
    wp_register_script('script-name', plugins_url('/js/script.js' , __FILE__), array(), '1.0.0', true); 
} 

//Replace "PUT YOUR JAVASCRIPT CODE IN HERE" with your actual code 
function myTestFunction($atts) 
{ 
    //Now enqueue the script 
    wp_enqueue_script('script-name'); 
} 

add_shortcode('myjavascriptfunction', 'myTestFunction'); 
在CMS

然后,进入该页面,将呼叫添加到内容文本框中简码:

[myjavascriptfunction /] 
+0

谢谢!特别是在functions.php文件中的任何地方 - 目前我收到:解析错误:语法错误,意外的'javascript'(T_STRING)在/home2/brady/public_html/demo/wp-content/themes/DonateNow/functions.php中在线615 – 2014-10-28 23:26:13

+0

它不喜欢以下内容: 2014-10-28 23:37:14

+0

@Cyber​​Clown Try我的新代码。这应该解决问题。 – 2014-10-29 16:49:25

0

这是代码script.js

<script> 
       var config = new Object(); 
       config.surveyID = 3160325; 
       /*config.animationMode = 0;*/ 
       config.takeSurveyURL = 'http://www.surveyanalytics.com/a/TakeSurvey'; 
       config.windowPositionLeft = 200; 
       config.windowPositionTop = 300; 
       config.home = 'http://www.surveyanalytics.com/'; 
       config.isRightToLeft = false; 
       config.surveyStartMessage = 'Start Survey'; 
       config.popupInvitationLaterMessage = 'Later'; 
       config.showFooter = true; 
       config.invitationDelay = 0; 
       config.skipCount = 0; 
       config.popupMode = 0; 
       config.expirationTime = 60 
        window.onbeforeunload = function() { 
          QP_popupMain(); 
        }; 
      </script> 

      <script language="javascript" type="text/javascript" src="http://www.surveyanalytics.com//javascript/exitSurveyInvitation.js"></script> 
       <noscript> 

       <a href="http://www.supporterfeedback.org/a/TakeSurvey?id=3160325">Start Survey</a> <a href="http://www.surveyanalytics.com/">Survey</a> 

       </noscript> 

这是在function.php中的代码

add_action('wp_enqueue_scripts', 'register_my_script'); 

function register_my_script() { 
    //This example puts it in plugins, but you can put it in your theme instead 
    wp_register_script('script', plugins_url('/script.js/' , __FILE__), array(), '1.0.0', true); 
} 

//Replace "PUT YOUR JAVASCRIPT CODE IN HERE" with your actual code 
function myTestFunction($atts) 
{ 
    //Now enqueue the script 
    wp_enqueue_script('script'); 
} 

add_shortcode('myjavascriptfunction', 'myTestFunction'); 
+0

而将其作为答案发布它不在脚本文件中使用脚本标记 – 2014-10-29 23:34:35