【问题标题】:Drupal custom query with localization (How to get user language)本地化的 Drupal 自定义查询(如何获取用户语言)
【发布时间】:2011-02-16 15:41:39
【问题描述】:

我有一个查询数据库中节点的块,但是该节点可以翻译成英语/西班牙语/...

有没有办法获取用户选择的语言,以便我可以将查询更新为“AND node.language = 'x'”(en/sp/..)之类的内容?

<?php
$args = explode("/",$_GET['q']);
$result = db_query("
SELECT node_revisions.body AS body FROM 
{node} AS node
INNER JOIN {node_revisions} AS node_revisions ON node.vid = node_revisions.vid
INNER JOIN {term_node} AS term_node ON term_node.nid = node.nid
INNER JOIN {term_data} AS term_data ON term_data.tid = term_node.tid
WHERE term_data.name = '".$args[1]."' AND node.type = 'country_page'
LIMIT 1
", $user->uid);
while($row = db_fetch_object($result)){
  echo($row->body);
}
?>

【问题讨论】:

    标签: drupal localization translation drupal-blocks


    【解决方案1】:

    我认为您可以通过以下方式在 Drupal 中获取用户当前的语言:

    global $language;

    $lang_name = $语言->语言;

    这应该适用于 Drupal 6 和 Drupal 7。

    参考: Drupal API docs

    【讨论】:

      猜你喜欢
      • 2018-12-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-02-25
      • 2023-01-20
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多