如何在没有任何过滤器的情况下使用Get_Option()?

时间:2012-01-25 作者:Mateusz

我正在使用最新的WordPress 3.3.1和最新的qTranslate 2.5.27。我制作了一些AJAX脚本,用当前语言返回值和消息。

这里我得到了我的第一个问题,我通过发送AJAX来解决它lang 从…起qtrans_getLanguage() 并将消息用于qtrans_use($lang, \'<!--:pl-->PL message<!--:--><!--:de-->DE message<!--:-->\');

我在DB中有一个wp\\U选项:\'example\' = \'<!--:pl-->polish text<!--:--><!--:de-->deutschland text<!--:-->\'使用时get_option(\'example\') 我总是Polish text.

我是想setlocale 在PHP中,但没有任何积极的结果。

get_option() 在任何php WordPress文件或模板中都能正常工作,但在我的AJAX中不能正常工作。。。

编辑:在模板中:

$.post(\'<?php echo get_bloginfo( \'template_url\' ); ?>/sendmail.php\', {
message: input_message,
lang: input_lang
}
在sendmail中。php:

\'destination_email\' is set to \'<!--:pl-->[email protected]<!--:--><!--:de-->[email protected]<!--:-->\'

$mail = _e(get_option(\'destination_email\'));
总是收到波兰语电子邮件。。。即使

\'setlocale(LC_ALL, \'de_DE\')\'
现在我正在使用硬代码电子邮件

$mail = qtrans_use($lang, \'<!--:pl-->[email protected]<!--:--><!--:de-->[email protected]<!--:-->\');
。。。

1 个回复
SO网友:icc97

我猜你在用language tags 围绕“波兰文本德意志文本”,即。<!--:pl-->polish text<!--:--><!--:de-->deutschland text<!--:--> 但是当你发布你的答案时,他们被忽视了。

我很确定你需要做的是使用__() (返回在php代码中使用的翻译)和_e() (echo直接进入屏幕)wordpress功能。如果您查看qTranslate支持论坛FAQ #14, 他举了一个例子:

<?php _e("<!--:en-->english text<!--:--><!--:de-->german text<!--:-->"); ?> 
在您的情况下,我认为您希望使用:

<?php __(get_option(\'example\')); ?>
这是假设您正在插件中使用它。如果您在页面模板中使用它,您会使用:

<?php _e(get_option(\'example\')); ?>

结束

相关推荐

在加载jQuery之后加载javascript

在加载jquery和jquery ui之后,我想为我的主题的首页加载一些javascript。这个钩子要用什么?我知道这些功能。php和我使用的是is\\u front\\u page()。通过在函数中插入wp\\u register\\u脚本。php,我可以在我想要加载的库之后对脚本进行排队,但我也只想在frontpage上加载它。在页眉上使用is\\u front\\u page()。php,则在jquery之前加载脚本。在加载jquery之后,我如何加载javascript,并且只能在首页上加载?