我正在尝试将事件跟踪实施到联系表单上的提交按钮。这是我正在使用的代码:
<input type='button' value='".((get_theme_option("translator_status") == "enable") ? get_text("tranlator_send_message") : __('Send comment','theme_localization'))."' id='submit2' class='feedback_go' name='submit'>
以下是我需要放在其中的代码:
onclick="_gaq.push(['_trackEvent', 'Contact Us Form', 'Submit', 'Submit']);"
代码开头和结尾的双引号会导致服务器错误。如果我改为使用单引号,则跟踪不起作用。
我尝试将双引号括起来,但这也会导致服务器错误。
如果有人能告诉我出错的地方和解决方法,我将非常感激。
由于
答案 0 :(得分:0)
使用sprintf()
,您可以更轻松地管理此代码:
echo sprintf('<input type="button" id="submit2" class="feedback_go" value="%s" onclick="_gaq.push(%s);" />',
htmlspecialchars(get_theme_option("translator_status") == "enable" ? get_text("tranlator_send_message") : __('Send comment','theme_localization'), ENT_QUOTES, 'UTF-8'),
json_encode(array('_trackEvent', 'Contact Us Form', 'Submit', 'Submit'))
);
它还使用htmlspecialchars()
来正确转义get_text()
或__()
的内容。