我怎么能在wordpress上修复这个错误

时间:2015-10-26 03:58:59

标签: html wordpress

我尝试将search form翻译成西班牙语,我有这个错误:

  

解析错误:语法错误,第5行/home/content/a/r/i/arismendy4444/html/wp-content/themes/passion/searchform.php中的意外T_STRING

我的代码

<form method="get" id="<?php echo "search-form-" . rand(0, 9999); ?>" class="search-form clearfix" action="<?php echo trailingslashit(home_url()); ?>"> <input autocomplete="off" type="text" onBlur="if ('' === this.value) this.value = this.defaultValue;" onFocus="if (this.value === this.defaultValue) this.value = '';" value="<?php _e('Keyword,kopa_get_domain()); ?>" name="s" class="search-text" maxlength="20"> <button type="submit" class="search-submit"><?php echo KopaIcon::getIcon('fa fa-search'); ?></button>

1 个答案:

答案 0 :(得分:1)

Google会就如何调试和修复您收到的错误提供大量答案。 unexpected T_STRING代表PHP无法正确解释的文本块,错误消息甚至指出错误源自的确切行。您应该首先尝试检查拼写错误,未公开的引号,括号和缺少的分号。

无论如何,您在'之后和逗号之前错过了单引号(Keyword):

<?php _e('Keyword,kopa_get_domain()); ?>
                ^^

这使得解析器吐出错误,因为它认为单引号文本在infitely上继续并且因为在结束引号之前找到PHP结束标记而中断。 SO荧光笔应该说明这一点,因为字符串突出显示一直持续到PHP结束标记(?>)。

另外,翻译函数中的gettext域(例如__()_e())应该实现为静态字符串,因为gettext将PHP文件解析为纯文本(没有PHP)解析。这意味着此模板中的文本域将位于kopa_get_domain()而不是kopadomain。所以这段代码应该像

<?php _e('Keyword', 'kopadomain')); ?>

虽然我认为您正在使用预制主题作为基础,因此这是主题开发人员在这种情况下的错误。