4

在 Drupal 7 多语言站点中,当创建节点并将语言设置为"Language Neutral"以外的其他内容时,当站点语言与节点语言不同时,其别名不起作用(错误 404)。

您可以避免从别名编辑页面 ( admin/config/search/path ) 将别名语言更改为“所有语言”的问题。

这很烦人,因为您必须为每个具有语言支持的新节点执行此操作。此外,当批量更新更改某些别名时,此设置会丢失。

有没有办法为每个创建的新别名设置“所有语言”?
有没有办法为所有已经创建的别名设置“所有语言”?

4

2 回答 2

3

您应该将此代码添加到您的 template.php

function youtheme_node_presave($node) {
         if ($node->type == 'nodetype') {
         $node->language = LANGUAGE_NONE;
        }
}

这基本上会将您的节点保存为中性语言;)更改节点类型或根据需要添加更多。

于 2012-10-08T09:20:07.717 回答
0

以上确实对我有用(来自:http ://bengoodyear.com/blog/drupal-7-cracking-the-multilingual-front-page-nut )但确实如此。

确保您打开了模块变量和变量翻译。转到 admin/config/regional/i18n/variable 从列表中选择“默认首页”,保存设置。转到 admin/config/system/site-information,您会注意到其中有一段文字说明了您的一些设置是多语言变量,以及您正在运行的语言的链接列表,这些链接允许您为每种语言设置设置语。

于 2014-04-04T12:41:13.173 回答