php - OnFocus javascript 命令导致 WordPress 崩溃

标签 php javascript wordpress onfocus

我正在调整 WordPress 主题,并试图清除焦点上的搜索字段,但是当我添加以下代码时,我得到了死机白屏。实际的 javascript 函数似乎是杀死它的原因,因为如果我使用空的 onfocus=""命令运行这个 PHP 脚本,一切都很好。

    add_filter('wp_nav_menu_items','add_search_box', 10, 2);
    function add_search_box($items, $args) {
if( $args->theme_location == 'primary' ) {
    $items .= '<li id="omc-header-search">              
                    <span id="omc-search-overlay">'. __('Search', 'gonzo') .' &rarr;</span>
                    <form method="get" id="desktop-search" class="omc-search-form" action="'.get_bloginfo('url').'/">
                        <input type="text" class="omc-header-search-input-box" value="Search" onfocus="if(this.value == 'Default text') { this.value = ''; }" name="s" id="fffff">
                        <input type="submit" class="omc-header-search-button" id="searchsubmit" value="">
                    </form>
                </li>';

return $items;

}

我不知道为什么这会导致整个事情崩溃。

最佳答案

白页通常表示 PHP fatal error 或语法错误。
在本例中,存在几个不同的错误:

  • 您尚未从 if() 语句中关闭 {
  • 您的长文本字符串中嵌入了未正确转义的引号 '

您对该字段中的默认文本也不一致。

  • 您将其设置为“Search”,并使用value="Search"
  • ...但只有当它等于“默认文本”时才清除它。

如果您修复了 PHP 语法错误,并将默认文本更新为搜索,它应该可以工作。

像这样:

add_filter('wp_nav_menu_items','add_search_box', 10, 2);
function add_search_box($items, $args) {
    if( $args->theme_location == 'primary' ) {
        $items .= '<li id="omc-header-search">              
            <span id="omc-search-overlay">'. __('Search', 'gonzo') .' &rarr;</span>
            <form method="get" id="desktop-search" class="omc-search-form" action="'.get_bloginfo('url').'/">
            <input type="text" class="omc-header-search-input-box" value="Search" onfocus="if(this.value == \'Search\') { this.value = \'\'; }" name="s" id="fffff">
            <input type="submit" class="omc-header-search-button" id="searchsubmit" value="">
            </form>
            </li>';
    }
    return $items;
}

关于php - OnFocus javascript 命令导致 WordPress 崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17497357/

相关文章:

javascript - Import { module } from lib 和 import module from lib/module 在 Javascript 中的区别

javascript - 将 React Context API 类转换为 Hook 的函数

javascript - 跨浏览器jquery

wordpress - 我激活了我的 wp Rocket,然后我的网站没有运行,只显示页面不起作用

php - 在 PHP 中构建包含多个项目和 PayPal 按钮的购物车

javascript - 使用 PHP 和 JSON 平面文件的最佳实践/方法

php - Paypal PHP SDK 从沙盒上线

php my sql 分页帮助需要链接并推进下一个偏移量

javascript - Jquery 切换功能不起作用

wordpress - 什么wordpress插件生成 '&lt;meta http-equiv="imagetoolbar"content ="no">' 行代码