如何从翻译的术语名称获得一个术语? -- taxonomy-terms 领域 和 i18n-l10n 领域 drupal 相关 的问题

How to get a term from the translated term name?


5
vote

问题

中文

我有一个翻译的分类学学期,他们的名字是 Autos Y Motel (西班牙语)。如何从中获取分类学术语对象?

如果术语名称是英文,我将使用 taxonomy_get_term_by_name('Vehicles & Motors') 获取分类学术语对象。

如何处理翻译的分类学家名称?

英文原文

I have a translated taxonomy term whose name is Autos Y Motores (Spanish). How can I get the taxonomy term object from it?

If the term name were in English, I would use taxonomy_get_term_by_name('Vehicles & Motors') to get the taxonomy term object.

How can I do with a translated taxonomy term name?

     
   
   

回答列表

5
 
vote

您可以尝试将其转换为 taxonomy_get_term_by_name 功能,尝试一些像

的东西
  $string= 'De Lema'; // string in not default site language I suppose in French $default_lang_short = 'un'; // I supposes you default site language is english change it to your default $en_value = t($string, array(), array('langcode' => $default_lang_short)); taxonomy_get_term_by_name($en_value);   
 

You can try to translate it before pass it to taxonomy_get_term_by_name function, try some thing like

$string= 'De Lema'; // string in not default site language I suppose in French $default_lang_short = 'un'; // I supposes you default site language is english change it to your default $en_value = t($string, array(), array('langcode' => $default_lang_short)); taxonomy_get_term_by_name($en_value); 
 
 
         
         
4
 
vote
vote
最佳答案
 

我在drupal中找不到任何功能,可以将翻译的字符串转换为实际字符串。所以,我所做的就是击中DB以获得实际的字符串并因此是字符串。

      $translated = 'Autos Y Motores';     $query = db_select('locales_target', 'lt');     $query       ->condition('lt.translation', $target)       ->fields('lt', array('translation'))       ->fields('ls', array('source'))       ->join('locales_source', 'ls', 'ls.lid=lt.lid');     $results = $query->execute()->fetchAll();   
 

I don't find any function in Drupal which can translate the translated string into actual string. So, what I did was hit db to get the actual string and hence the string.

    $translated = 'Autos Y Motores';     $query = db_select('locales_target', 'lt');     $query       ->condition('lt.translation', $target)       ->fields('lt', array('translation'))       ->fields('ls', array('source'))       ->join('locales_source', 'ls', 'ls.lid=lt.lid');     $results = $query->execute()->fetchAll(); 
 
 
3
 
vote

如果您有此设置:

  • ES: Autos Y Motel
  • en:车辆&电动机

使用此代码:

   $term = taxonomy_get_term_by_name('Autos Y Motores');  //getting the term object  $term = array_values($term)[0];  //searching the translation  $translated_term = i18n_taxonomy_term_get_translation($term, 'en');  //$translated_term is your term in English  echo $translated_term->name;   

输出:

车辆&电机

 

If you have this set:

  • ES: Autos Y Motores
  • EN: Vehicles & Motors

Use this code:

 $term = taxonomy_get_term_by_name('Autos Y Motores');  //getting the term object  $term = array_values($term)[0];  //searching the translation  $translated_term = i18n_taxonomy_term_get_translation($term, 'en');  //$translated_term is your term in English  echo $translated_term->name; 

Output:

Vehicles & Motors

 
 
       
       

相关问题

1  视图标签过滤器  ( Views tag filter ) 
我似乎无法让我的标签过滤我打算他们的工作方式。 我想要做什么: 我有一个词汇,通过附加到文章内容类型的标签字段创建。 我有一个内容类型foo,我正在创建一个观点,以列出与foo标题相对应的标记的'文章' 前: 文章类型: 1 - 标签:'yay你' 2-标签:'yay me' foo类型 1 - 标题:'Yay...

0  用于搜索分类词汇表的公共参考字段  ( Common reference field to search upon for taxonomy vocabularies ) 
tldr:我需要一种始终如一地姓名/搜索一个字段,该字段引用了跨多个词汇表的相同术语引用。 我有几个词汇表,所有词汇都独立适用于内容类型。在这些词汇中,虽然在这些词汇表中,来自某些词汇表的术语应仅在已添加到词汇表的术语参考字段中标记为另一个术语。 例如: 主类(词汇) 类别a 类别b 类别c 选项...

0  如何逆转下拉视图的暴露过滤器显示分类术语参考字段  ( How to reverse order of pulldown views exposed filter showing taxonomy terms ref ) 
在视图3 d7中,我有一个具有暴露的过滤器下拉的视图,基于名为版本的分类词汇。滤波器下拉显示了词汇量顺序(SO 1.0,2.0,3.0)的版本,我需要它以反向顺序(3.0,2.0,1.0)向它们展示。 我尝试使用更好的曝光过滤器来渲染过滤器,但我没有看到排序顺序的任何选项。我还尝试使用默认的Drupal过滤器,并没有...

1  mutliple表单,表单提交和计算  ( Mutliple forms form submissions and calculations ) 
我有以下方案,我想知道如何制作最佳的自定义模块,或者如果有一些贡献的模块,我可以使用它。 方案: 我有一个具有100个不同形式的网站,每个表单中的联系信息表单。 匿名用户提交了一种形式。此表单需要发送到正确的用户的角色a,并在其配置文件中具有与它们的配置文件相同的标签。所以,不是所有用户都有一个角色来看提交的表格。...

-3  在保存之前将字段与某些标准填充[关闭]  ( Filling the field with certain criteria before save ) 
关闭。这个问题需要详细信息或清晰度。它目前不接受答案。 想要改进这个问题?添加详细信息并通过编辑此帖的问题。 关闭 5年前。 ...

1  警告:Taxonomy_Field_Formatter_View()中为foreach()提供的无效参数  ( Warning invalid argument supplied for foreach in taxonomy field formatter vie ) 
我的drupal安装有一些警告,我尝试了几个补丁,但他们都没有为我工作。这些是警告消息: 警告:foreachy_field_formatter_prepare_view()中为foreach()提供的无效参数(模块/分类/分类系统的第1677行)。 警告:foreachy_field_formatter_view...

1  允许用户添加自己的分类术语来上传的图像  ( Allow users to add own taxonomy terms to uploaded images ) 
我正在使用 imagepicker moudule允许用户将图像添加到网站。 我希望它们有一个'标签'栏,在那里他们可以添加描述他们上传的图像的单词(以便其他用户也可以由这些标签搜索) 一个像上传问题的那个网站上的一个! ...

2  视图,如何从每个标记中显示X-Items?  ( Views how to show x items from each tag ) 
我不想创建一个显示最大值的视图:10个标签(足球,篮球,网吧等) 我希望查看每个标签的3项 [fabotall_article_1] [fabotall_article_2] [fabotall_article_3] [basketball_article_1] [basketball_artic...

2  如何改变表和网格视图的分类学术语路径  ( How to change taxonomy term path for table and grid view ) 
我正在使用分类学术语模块。我有词汇类别和术语如此多的类别,我已经使用分类学术语创建了视图。 使用两个页面是表格格式,另一页是网格格式,并且在两个视图标题中我放置两个图标一个是列表图标,另一个是矩阵图标。 我的问题是,当我点击列表图标时,页面重定向到表视图和路径显示 taxonomy/term/% 但我想要以此格式显示...

0  如何添加索引:在不同的视图中有分类学术语ID(深度)?  ( How to add indexedhas taxonomy term idwith depth in the contexual filter of v ) 
我已创建一个视图并将索引字段添加到该视图以显示内容。 我想向分类有关的内容显示与分类"相关的地方" 以及其相关的儿童分类内容。用于选择儿童分类我使用简单的分层模块,但我面临的问题是我没有选择索引的任何选择:在不同的过滤器中具有分类项ID(深度)以显示内容。 使用索引字段在视图中使用索引字段使用Facet API过滤...

2  显示内容具有登录用户的分类  ( Display content having the taxonomy of the logged in user ) 
我需要帮助在drupal 7中创建视图,其中包含以下逻辑: 我的用户有分类法参考字段。 我的文章也有分类参考场。 当用户登录时,我希望它们只能看到与登录用户具有相同术语的文章。如何在此视图中设置关系和上下文过滤器? ...

1  加载分类学术语自定义现场数据  ( Loading taxonomy term custom field data ) 
我有一个词汇"holiday_types" ,分类术语"滑雪" 和"海滩" 。我有一个关于这些分类术语"Field_ActivityID" 的自定义字段,涉及遗留系统。 我想加载所有这些术语,以便我循环通过区域列表,我可以将cauronony_term id添加到实体参考字段,我需要获取传统的活动来查询外部API。 ...

2  生成分类学期的URL(标签)  ( Generating url to taxonomy term tag ) 
我正在尝试插入标签URL和Breadcrumb路径中的页面标题。使用页面标题一切正常,但是我找不到有关如何获得标记的信息,或者如何为它们生成URL。我想我正在得到你应该是什么样的标签,但这返回了 DrupalCoreFieldPluginFieldFieldTypeEntityReferenceItem 没有id(?...

0  如何基于来自其他三个词汇表的术语组合自动分配术语?  ( How to auto assign a term based on a combination of terms from three other vocab ) 
这是一个非常奇怪的场景,所以忍受我: 我正在通过Feeds模块从CSV文件导入数据以创建产品参考节点。有3列包含一个术语(让我们调用列"代码类型" ),因此,自然地,我为产品参考节点设置了3个词汇表,以使用和映射/导入代码类型的术语。客户很久以前就明确了,这些条款对客户来说不会有很大的意义,因此能够通过选择术语的组合...

2  为公开的分类滤波器重写查询字符串  ( Rewrite query string for exposed taxonomy filter ) 
我有这个页面: https://www.meubelentheo.be/catalogus 在本页的顶部,就在标题下方,您将看到Babykamer,局,Decoratie等的链接。 这些是暴露过滤器中的分类术语。我将视图模块一起使用更好的暴露过滤器。 如果单击BabyKamer的第一个术语,您将看到URL更改为 ...

1  如何检索选择框选项并将字段的值设置为它?  ( How to retrieve a select box option and set the fields value to it ) 
我在一个节点中有一个分类学术语选择框(名为"product_key_keyword" )通过参考现场选项限制模块。在节点中有3个其他分类学术语参考字段,负责将"Product_keyword" 选项列表的一切顺失为单个选项,并且此部分正好工作。 "product_keyword" 字段设置为必需,因此当您实际进入编...

1  从父权序显示节点  ( Displaying nodes from parent terms of user ) 
我有一个与部门组织的分类。 组织: dept1 subdept1 subdept2 dept2 subdept3 subdept4 我已创建一个实体参考字段,我使用与用户和节点相同的字段(消息)。 我想向组织的一部分发送消息,用户将设置为子部门。 我已经使用了登录用户的UID的...

0  分类经理  ( Taxonomy manager ) 
我想允许用户为特定分类的分类术语添加分类术语。 我添加了一个菜单项来链接到分类管理经理。问题是 - 我无法将用户限制为只有一个分类(基于他的角色)添加术语。 或者,我试图通过编辑主题CSS来隐藏"切换词汇" 下拉(不是模块CSS。我希望即使在模块更新之后也希望行为相同)。这也不起作用。 任何建议 - ...

0  具有节点计数的分类列表,请将其中0个排除  ( Taxonomy list with node count exclude those with 0 ) 
我有一个视图,用于在博客上显示博客类别,其中包含该类别中的博客帖子的相应计数。在有0个博客帖子的情况下,我想从列表中排除该项目。这是我的观点: $view = new view(); $view->name = 'blog_categories'; $view->description = ''; $view->...

0  在与分类的视野中重复  ( Duplicates in a view with taxonomy ) 
我创建了一个具有全局组合字段过滤器设置的视图,以通过节点的标题和一组分类术语搜索。它可以正常工作,但只有我包括"分类学期:名称" 字段。 此字段当前导致每个节点出现在分配给它的每个术语的结果中。我检查了该字段的聚合设置,但只有这些选项:[" 1 我还尝试了不同模块的视图,但以良好的性能成本。有: 一种我可以在...




© 2021 it.wenda123.org All Rights Reserved. 问答之家 版权所有


Licensed under cc by-sa 3.0 with attribution required.