Drupal 7.我使用t()函数以不同的语言翻译了许多字符串。我使用英语作为默认语言,并在我的模块文件、模板文件等周围添加了t(这是一个新字符串)。
问题是,我已多次更改原始字符串名称,而且在某些情况下,我没有删除“重复”条目,因此存在垃圾。有没有一种方法可以列出或检索我添加的所有t()字符串?也许与一个新的Drupal安装和导出一个模板*.po相比较,并使用一个程序来比较这些更改?
谢谢!
发布于 2015-09-04 19:37:37
在locales_source中消除不必要条目的一种方法是运行以下命令:
DELETE locales_source
FROM locales_source
LEFT JOIN locales_target lt
using (lid) where lt.lid is null;要了解这将从表中删除什么,可以使用以下方法进行检查:
SELECT count( * )
FROM locales_source
LEFT JOIN locales_target lt
USING ( lid ) WHERE lt.lid IS NULL;我的想法是:http://julian.pustkuchen.com/en/drupal-7-performance-blown-localessource-table
在我的例子中,我在locales_source中有很多陈旧的内容。我还有很多页面将内容标记为正在翻译,但是页面中包含了许多调用t('...')调用,这为表添加了不必要的条目。长话短说,我能够安全地删除超过一百万行的数据,站点的性能从绝对糟糕到很好地运行。
嗯,但它对我有用。
https://drupal.stackexchange.com/questions/145721
复制相似问题