Questions tagged «taxonomy-terms»

“分类法”是指Drupal的内容分类机制,分为词汇和术语。

3
查看上下文过滤器分类名称
我正在为具有分类字段的自定义内容类型的视图添加上下文过滤器。上下文过滤器允许我按分类标签ID进行过滤,但不能按分类标签名称进行过滤。在分类法中具有给定标签的含义: 1 | test1 2 | another tag 3 | taggy ...... 99 | coolness 我可以生成一个上下文过滤器,该过滤器将解析URL,例如http://mydrupal/myview/3显示已被taggyBUT 标记的所有内容,该URL需要将参数传递给通过标记名而不是标记ID进行查找,例如,http://mydrupal/myview/taggy查看所有使用taggyHow can 标记的内容。能做到吗?
106 7  taxonomy-terms  views 

6
以编程方式创建一个术语?
我正在尝试向词汇表中添加很多术语(〜200个),但是我找不到为Drupal 8更新的任何导入模块,而且看来在Drupal 7中执行此操作的功能在Drupal 8.那么,有人能指出我这样做的正确方向吗? entity_create如注释中所建议的那样,我尝试使用以下代码来实现: $term_create = entity_create('taxonomy_term', array('name' => 'test', 'vocabulary_name' => 'client')); 但是我得到了这个错误: Drupal\Core\Entity\EntityStorageException: Missing bundle for entity type taxonomy_term in Drupal\Core\Entity\FieldableEntityStorageControllerBase->create() (line 65 of core/lib/Drupal/Core/Entity/FieldableEntityStorageControllerBase.php). 有任何想法吗?
32 taxonomy-terms  8 

5
如何从TID获取分类学术语名称?
我们很多东西的uri格式如site/taxonomy/XX,其中XX是整数。 我发现了很多问题,例如“ 如何从名称中获取TID? ”,但是我想从中获取名称TID。我正在尝试将面包屑脚本放在一起,除这些情况下,如“ home > term” 外,一切都很好。相反,我想要像“ home > <TERM NAME>”这样的内容。 我该怎么办?
32 7  taxonomy-terms 


5
如何用视图覆盖分类法/术语/%列表?
我有一个附加到内容类型的词汇表。只能选择一个术语对使用此内容类型创建的节点进行分类。该词汇表称为“车辆”,术语为“汽车,卡车,轮船”。内容类型也称为车辆。 我使用自动路径,以便显示[vocabulary:name] / [term:name],因此在渲染时将显示site.com/vehicles/trucks,例如,将显示所有卡车...典型的Drupal素材。好... 现在,我有一个视图,它是带有路径“车辆”的页面。设置为显示内容类型“车辆”的所有项目。此页面视图还设置为接受参数“分类术语ID”。 请注意,如果存在分类法术语,则为分类法路径生成的url别名与提供了参数的“视图”页面完全相同: URL别名分类路径=车辆/卡车。带有参数=车辆/卡车的视图页面。 这是故意的。我的目标是在不存在参数的情况下显示该内容类型的所有结果,并且当存在参数时,最重要的是根据该分类术语过滤结果,并保持与不使用参数时相同的字段和结构(与site.com/vehicles)。 问题是,这无法正常工作。site.com/vehicles正确显示了我的视图和相关过滤器。site.com/vehicles/trucks仅显示Drupal提供的常规,未格式化的分类法列表。 这是因为分类标准术语ID参数配置不正确吗? 这是在Views之后触发分类法挂钩的重要问题吗?如果是这样,如何在这里重新调整权重,使其正确触发并为我提供所需的结果? 我知道您将要提出的建议-视图带有分类/术语/%视图,以覆盖drupal默认视图。 但是,对于我来说,这是行不通的。我有多种内容类型,每种内容类型都有自己的词汇表,每种都有自己的视图和不同的字段集(例如房屋和汽车,具有非常不同的字段集)。如果所有内容类型都具有相同的字段,则分类法/项/%可以使用,那么我可以模仿那些覆盖的内容,但是既然不是这种情况,我如何正确地获取带有参数的路径以显示基于那个词汇并保持我的领域结构? 抱歉,这令人困惑。该站点的链接以供参考http://www.buyagainbaby.com。该站点当前确实使用了分类法/术语/%作为替代,但是同样,它必须进行更改,以便每个视图都负责根据分类法呈现结果集。


7
在哪里可以找到词汇表ID($ vid)?
在Drupal 6中,我将转到/ admin的“分类”部分,然后可以在URL中找到$ vid(数字)。 在Drupal 7中(毫无疑问,由于引入了术语作为实体),URL不再像以前那样冗长(有些人会说更干净),因为它现在可以显示词汇表的机器名称(捆绑名称?)。admin/structure/taxonomy/my_vocabulary/edit。 我的最终结果是使用taxonomy_get_tree($ vid,$ parent,$ max_depth,$ load_entities)加载我的词汇表,并以丰富多样的方式使用它,但是可惜这个函数不接受machine_name,但大概希望使用数字$vid。 我会接受替代方法来加载完整的词汇树(即所有术语及其相互之间的关系),但我确实认为应该为Google的后代直接回答这个问题。
24 7  taxonomy-terms 

4
构建任意深度的简单分类浏览器的简洁方法
我花了几天的时间来确定一种干净的方法来执行以下操作: 显示词汇表中所有顶级术语的列表及其子术语的链接 单击链接后,将转到这些条款的孩子的列表。 无限广告,直到最低级别的术语为止,最低术语将显示带有该术语标记的节点列表。 似乎这是非常普遍需要的功能,但是我找不到能够处理任意深度的解决方案,尤其是如果不是所有术语树都下降到相同深度时。 理想的解决方案是使用Views 3,Contexts,EntityFieldQueries或Drupal 7很好支持的任何其他解决方案。 我能做到几乎通过制作一个简单的观点有三个节点正是我想要的:长期的关系(长期,短期的母公司,以及长期的父亲的父亲)和用户那些连续上下文过滤器。唯一的问题是,如果存在一个术语路径深度太小的节点,该节点将被列为“未分类”并生成无效链接。与其这样做,我不希望它链接到下一个可用的子术语。

8
如何使用Views 3创建带有术语和节点的嵌套树?
我需要创建类似以下内容: 颜色(词汇) 红色(字词) 黑暗(术语) 节点1 节点2 轻(术语) 节点3 节点4 蓝色(术语) 节点5 节点6 绿色(术语) 节点7 节点8 (子弹点是缩进的。) 有没有办法用Drupal 7和view 3做到这一点?如果没有,还有其他方法吗?

2
使用实体参考而不是术语参考有什么好处/优势?
确实是一个非常简单的问题,但是相对于实体参考字段,使用核心术语参考字段有什么好处? 显然,标记并不是Entity Reference的真正选择,但是我已经使用内联实体表单从节点页面创建新术语,并且效果很好(如果术语包含字段,我更喜欢标记)。 tl; dr 除了标记外,使用实体参考而非术语参考来引用分类标准术语还有什么好处/优势?

5
按名称加载字词
在Drupal 7中,我们可以使用ex的名称加载术语。 taxonomy_get_term_by_name($name) 有没有办法在Drupal 8中通过给定名称加载术语?
21 8  taxonomy-terms 

1
如何获得与Search API紧密协作的分类法同义词?
标记同义词是许多站点中流行的重要功能(例如,在StackExchange上使用),而分类法同义词曾经是Drupal 6核心分类法模块的一部分,后来被放弃使用“ Roll your own”自定义同义词系统使用Field API。 当同义词可靠地工作时,它们在搜索中非常有用。例如,确保搜索“ America”会找到标记为“ USA”的内容,等等。但是,在使用流行的Search API - Facet API时,我找不到任何实现此功能的标准方法的线索系列相关的集成搜索模块,用于节点搜索。 当使用这样的模块集群时,“顺其自然”很重要,以确保您实现的系统不会违背社区和模块维护者的思想。当它们确实与谷物背道而驰时,它们就会变得易燃,并有可能因将来对这些模块的更改而损坏。 在D7中使用Search API为网站实施分类法同义词的可靠/可靠/标准/预期方法是什么?(特别是使用Search API Solr,但我希望Search API尝试抽象出特定搜索提供程序的尝试在这种情况下会起作用)。 如果您有一个可以正常运行的系统,但是您已经确定了这一点,并且不确定是否确实存在(在Drupal中很常见),请无论如何都要与您的信息共享测试,使用和使用Search API-Facet API家族中哪些功能和模块不起作用的经验。 我在研究中发现了一些合理但潜在的胡言乱语的选择: 有一个D7 搜索同义词模块,但看起来用得很少,也没有任何确认,它可以或将继续与Search API之类的第三方搜索模块一起使用(该模块是在Drupal核心搜索的基础上设计的)。编辑: 一般而言,在D7中看起来也不是太可靠。 从理论上讲,可以在分类词汇表中添加一个称为“同义词”的术语参考字段,并以与节点本身上的术语同等的权重从Search API中的术语索引该字段。这将适用于文本搜索,但是感觉像是一个浅薄的MacGuyver-y风管磁带解决方案,而不是能够平稳地插入整个Search API系列的强大功能。例如,如果术语“英国”具有同义词“英国”,则在“英国”上进行搜索的人会获得带有United Kindgom标签的结果,但有人在自动完成的“分类法”暴露的过滤器中键入“英国”或选择具有分类法事实的英国不会看到带有“ United Kingdom”标签的任何内容。***** 另一种类似的可能性是在术语词汇表中添加一个多值纯文本字段“同义词”(我猜是逗号,或者用逗号分隔),并用与上述术语名称相同的权重对其进行索引。但这在上面的示例中具有与上述类似的问题,即使不是更糟糕,“ British”甚至不会在构面或暴露的滤镜中列为选项。可能有某种方法可以通过组合名称和同义词(“ United Kingdom(英国,英国)”)来创建复合字段,并设置构面/暴露的过滤器/等以使用该字段...但是我想不出任何方法要做到这一点,您不必担心骇人听闻,也不必担心会遇到麻烦。编辑: Search API Combined似乎是为这样设计的,但是我 然后是将所有内容填入术语名称的最后一种选择:应该清楚这是不希望的,并且在很多情况下会列出非常难看的列表(例如,想象一下像“北韩国(朝鲜民主主义人民共和国,朝鲜,朝鲜民主主义人民共和国)” ...)。或拥有一个显示简短版本的“显示名称”字段,并设置除搜索(所有视图,Pathauto,使用术语名称的所有其他contrib / core模块)之外的所有内容,以使用它代替术语名称...,非常hacky,非常反对粮食。 Apache Solr具有同义词功能,该功能读取同义词的文本文件,并且在使用它的搜索中将这些术语视为同义词。但是,尽管在使用Solr的Search API设置中可能的情况下,模块维护者认为这是不受支持的“自行承担风险”高级Solr配置。同样,比起在分类法中专门使用的同义词,更适合于网站语言中的通用同义词。例如,一个分类法不能将英国,苏格兰等与英国区分开的网站可能希望在标记的上下文中将它们视为同义词,而在对正文进行搜索时则不希望它们成为同义词。编辑: 头Facet API维护者警告此路线 因为Solr集成模块使用术语作为TID而不是文本。 …

6
如何在视图中以其层次结构显示术语?
我创建了一个视图来显示“ 产品”词汇表的术语。 我设置的视图: 格式: HTML列表 显示:场 字段:分类术语:名称 它工作正常,但是它的层次结构丢失了。 产品词汇表具有以下结构: - 汽车 -福特 -沃尔沃 - 电脑 - 桌面 - 笔记本电脑 但是在“视图”中,这些术语失去了层次结构,并列出如下: - 汽车 -福特 -沃尔沃 - 电脑 -桌面 -笔记本电脑 我在这里想念什么?


4
干净的网址-自动路径别名-如何从网址中删除重音符号(ÁÉÓÍÑ)?
我正在使用Drupal 7.9和pathauto 7.x-1.0-rc2 我想从路径中删除重音符号,并用普通字母替换 Á=A É=E Ó=O Í=I Ñ=N 等等 我使用分类法字段类型和节点标题来构建路径: [node:field_provincia]/[node:title] 导致例如ávila/mérida pathauto是否具有可用于应用此功能的某种挂钩? function removeAccents($str) { $a = array('À', 'Á', 'Â', 'Ã', 'Ä', 'Å', 'Æ', 'Ç', 'È', 'É', 'Ê', 'Ë', 'Ì', 'Í', 'Î', 'Ï', 'Ð', 'Ñ', 'Ò', 'Ó', 'Ô', 'Õ', 'Ö', 'Ø', 'Ù', 'Ú', 'Û', 'Ü', 'Ý', 'ß', 'à', …

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.