如何基于内容类型更改术语URI -- 7 领域 和 taxonomy-terms 领域 drupal 相关 的问题

How to change a term URI based on content type


4
vote

问题

中文

我有2种内容类型(照片,视频),两者都有一个术语参考,对"主题" 分类。 主题术语在节点显示页面上显示,我想链接到照片的"/ photo /%" ,用于视频,用于视频,而不是默认的"/taxonomy/term/%".

如何做到这一点?

英文原文

I have 2 content types (photos, videos) and both have a term reference to a "topic" taxonomy. The topic terms are showing on the node display pages and I would like to link to "/photo/%" for photos and "/video/%" for videos instead of the default "/taxonomy/term/%".

How can I do that?

     

回答列表

2
 
vote
vote
最佳答案
 

如果在问题中建议的方式实现了这个问题很难。如果您使用两个单独的词汇表:Video_topic和Photo_topic,它会变得容易。然后,video_topic可以具有以视频/%开头的路径辅助路径,照片可以具有以照片/实例为开头的路径.< / p>

考虑:如果使用单个词汇,则单击链接视频/%将显示视频和照片。相同的照片/%。如果这是您想要的,那么也许您应该使用的路径应该是主题/%而不是视频/%和照片/%。如果您希望将结果分别显示,则单独的词汇表绝对是前往的方式。

如果要在同步中保留视频/%和照片/%词汇表,那么每次单击照片主题时都可以在代码中添加视频主题,并且Visa Venta。尽管如此,重要的是要考虑如何表现您的系统,因为它会推动您想要选择的解决方案和实现。

 

This problem is Hard if implemented the way suggested in the question. It becomes easy with pathauto if you use two separate vocabularies: video_topic and photo_topic. Then, video_topic could have pathauto paths that start with video/% and photos can have paths that begin with photo/%.

Consider: if you use a single vocabulary, then clicking on the link video/% would show both videos and photos. Same with photo/%. If this is what you want, then perhaps the path you should use should be topic/% instead of video/% and photo/%. If you do want the results to be shown separately, then separate vocabularies are definitely the way to go.

If you want to keep your video/% and photo/% vocabularies in sync, then you could add a video topic in code every time a photo topic was clicked, and visa-versa. It's important to consider how you want your system to behave, though, as that will drive the solution and implementation that you'll want to choose.

 
 
     
     
5
 
vote

我的答案将使用两个模块,即工具,而不是解决方案。您将在需要了解模块如何工作的成本,灵活地完成您想要的大多数您想要的任何东西。我将提供下面所需配置的概要,有用这里的视频,如果您粘在特定于任何地方,我会尝试更新答案。

  1. 安装并启用页面管理器,以及面板
  2. 转到管理员/结构/页面/添加,并添加一个页面,路径视频/%Video_term
  3. 在下一页的
  4. ,单击"更改" ,然后选择"分类学期:ID" ,然后选择ID,或名称,因为它适合您。
  5. 挑选任何布局,然后继续前进,直到您可以单击"完成" 以结束向导。现在用你想要的任何内容填充你的布局。
  6. 对您的"照片" 页面重复步骤1-4。

由于Drupal不允许您在第一级别使用变量,因此无法执行/%content_type /%术语,因此我们创建了两个页面。就个人而言,我会选择做类似/产品/%content_type /%期限的事情,因为单个页面将降低您的维护负担。然而,它将需要了解"变体" ,以容纳两个页面。视频将解释一下。

 

My answer is going to use two modules, that are tools, not solutions. You will get the flexibility to do most anything you want with the paths, at the cost of needing to understand how the modules work. I will provide an outline of the required configuration below, there are useful videos here, and I will try to update the answer if you get stuck anywhere specific.

  1. Install and enable the Page Manager, as well as Panels
  2. Go to admin/structure/pages/add, and add a Page, with the path video/%video_term
  3. On the next page, click "Change", and pick "Taxonomy term: ID", then pick ID, or Name, as it suites you.
  4. Pick any layout, and just move on until you can click "Finish" to end the wizard. Now fill your layout with whatever content you wish.
  5. Repeat steps 1-4 for your "photo" page.

Since Drupal doesn't allow you to use a variable at the first level, you can't do /%content_type/%term, so instead we create two pages. Personally, I would opt to do something like /products/%content_type/%term, as a single page will lower your maintenance burden down the road. That however, will require understand "Variants", to accommodate two pages in one. The videos will explain that.

 
 
1
 
vote

我很确定你可以使用pathauto来设置这个。我知道你可以设置自定义分类路径。我刚刚为我的Drupal Commerce网站做了。

http://drupal.org/project/pathrauto

只需确保在设置模式时,它不会与您为其他内容类型设置的模式重叠。

 

I'm pretty sure you can set this up using Pathauto. I know for a fact that you can set custom taxonomy paths. I just did for my Drupal Commerce Site.

http://drupal.org/project/pathauto

Just make sure that when you set a pattern, it doesn't overlap with a pattern you have set for another content type.

 
 
     
     
1
 
vote

在Drupal 6中,我用Pathauto模块完成了这个,快速查看Drupal 7代码表明它也在那里工作。在D6中,您转到 admin/build/path/pathauto ,然后选择 Taxonomy term paths ,并将其更改为您想要的任何内容所以类似的东西应该在D7中工作。

 

In Drupal 6, I've done this with the pathauto module, and a quick look at the Drupal 7 code suggests it works there as well. In D6, you go to admin/build/path/pathauto and select Taxonomy term paths and change it to whatever you want so something similar should work in D7.

 
 

相关问题

4  如何在查看视图时保存用户想要的过滤器?  ( How can i save what filters a user wants when viewing a view ) 
我不知道这是可能的,但我想允许我的用户能够过滤他们想要在视图中显示的内容,以便每次返回该视图时,他们的偏好保存。 我否如何允许我的用户在视图中过滤内容,但我无法保存它。我正在努力让我的用户控制自己的新闻源。 我已经尝试过一些模块来做这个,我一直在玩一段时间,但我似乎无法破解我所概述的东西。任何帮助,将不胜感激。谢谢...

3  如何在地址域显示城市与州之间放置逗号?  ( How to put a comma between city and state in addressfield display ) 
我正在使用带有drupal 7.10的 addressfield 模块。在显示地址域时,我想要一个逗号。目前地址如下所示: 123 Main St SomeCity California 90100 我希望它显示: 123 Main St SomeCity, California 90100 ...

2  下拉列表框+视图 - 不使用分类物  ( Dropdown with search box views without using taxonomy ) 
好的,所以我一直在谷歌上搜索几周,我如何这样做,我把一些东西在一起。 我想结合年份值,并将其与搜索框组合。 现在,我想知道我可以创建一个视图,然后通过URL传递上下文参数。这完美无缺。我可以通过访问URL http://example.com/cars/来到1977年1977年为汽车制造的制动器的结果1977年,刹...

2  允许用户通过UI设置一些CSS设置  ( Allow user to set some css settings through ui ) 
用户希望能够为网站的外观选择一些尺寸和颜色。这些是CSS规则。我有一个模糊的愿景如何通过模块来完成,但也许已经存在了这样的东西? 我需要的是将某种形式与字段为组合框,允许用户从几个值中进行选择。例如。允许他从{红色,蓝色,黄色}中选择"新闻标题的背景" ,恰好是.News-header-background类。 ...

1  可以在Drupal 7上触发Ajax呼叫重新加载自己的表单吗?  ( Can a form triggering an ajax call reload itself on drupal 7 ) 
我正在尝试建立一个页面,以便在顶部的流提出问题,因此我需要ajax来避免重新加载。它实际上很简单。顶部是一个带有流的节点,我添加到下面的块。 一个问题,问题,问题的票数和"添加投票" 按钮 一种添加新节点的表单"用0投票" 我有两个问题。 a)当我点击2的提交按钮时。块我添加一个问题,我可以用新问题更新表,...

5  如何修改页面中的分类术语路径呈现数组?  ( How to modify taxonomy term path in the page render array ) 
我正在尝试在节点页面上显示之前更改一个术语的路径。我在template.php中使用这个预处理函数: function bartik_preprocess_node(&$variables) { $variables['field_photo_topic']['0']['taxonomy_term']->...

1  用户的论坛CMS? [关闭]  ( Forum cms for user ) 
此问题似乎在帮助中心中定义的范围内涉及Drupal。。 想要改进这个问题?更新问题,所以它是关于drupal答案的主题。 ...

0  可以使用数字启动主题名称吗?  ( Can a theme name be started with a number ) 
我可以用数字开始主题名称吗?例如:"123Go" drupal识别文件夹&amp;以其开头的文件? 它在寺庙中工作.PHP作为函数的开始? ...

1  在视图列表节点中显示节点注释的分组视图  ( Displaying grouped view of node comments in a view listing nodes ) 
我创建了一个列出了许多节点的视图。我已经添加了"节点注释" 的关系,然后将注释添加为视图中的字段。我所拥有的问题是,如果节点上有多个注释,则视图列出多次节点。例如,当前视图显示此名称 Node Title: Title 1 Nid: 1 Node Image: Image Comment: Comment 1 ...

5  在Drupal 7中,我如何只有在查看前页面时才能包含CSS文件?  ( In drupal 7 how can i include a css file only when the front page is being view ) 
我想仅在查看前页面时包含特定的CSS文件,因为它只适用于前页,并且它是一个相对大的文件。我知道解决方案将涉及使用 drupal_add_css()我不确定在我的主题 theme/template.php3 文件中的位置。我的主题内有特定的钩子,我应该实施它吗?谢谢。 编辑:我基本上有代码,我只是不确定我的主题文件可以...

1  Drupal 7,Ubercart,产品搜索按价格范围  ( Drupal 7 ubercart product search by price range ) 
我正在使用ubercart 3.x,drupal7。有人可以告诉我如何在指定的时间间隔内使用价格创建一个用于搜索产品的表格? IE。用户应以最低价格填充此表格,以间隔和最高价格和发布表格后,他将看到所有适合的产品。 ...

1  RTF与内联图像+字限制的模块?  ( Modules for rtf with inline images word limits ) 
我想允许我的所有网站的用户添加自己的博客文章,具有某些约束。 这是我想要给它们的表格: Title : Contents (RTF, max 700 characters) : Submit (or Login/Register then Submit) : 所有帖子的强制性: 在注释上启用读/写权限 ...

1  从Drupal的前端更改模块中的代码  ( Change the code in the module from the front end of drupal ) 
我已创建了我的自定义模块。我可以从Drupal的末尾编辑我的模块,然后将其前后提起并编辑模块。是否有任何模块为此目的? ...

1  CSS移动兼容的耳机主题吗?  ( Css mobile compatible theme for drupal ) 
是否有CSS移动兼容的主题,用于DRUPAL? CSS移动兼容站点的示例: http://framelessgrid.com/ ...

0  如何为内容添加类别  ( How to add categories to content ) 
我仍然是德鲁佩尔7.我读过一些关于Drupal的工作的几件事,但我不太好了。 如何为不同类别创建文章?我想制作可以在图形,绘画或3D等下列出的文章。如何将它们分类在主菜单中?博客模块或书本模块如何不同? 我知道这可能已经在这里发布了同样的地方,但我只想在长章中找不到一个简单的解释。谢谢家伙。 ...

21  在模态窗口中显示表单[已关闭]  ( Show forms in a modal window ) 
关闭。这个问题是基于意见的。它目前不接受答案。 想要改进这个问题?更新问题,所以它可以通过编辑此帖的事实和引用来回答。 关闭 3年前。 ...

1  YouTube缩略图 - 单击时调整接口小部件和行为的选项?  ( Youtube thumbnails options for adjusting interface widgets and behaviour when ) 
我希望将YouTube视频添加到我的网站作为链接 - 我想使用视频缩略图。我不关心使用哪种缩略图(如本文所讨论的:如何控制YouTube中的预览图像) 我所关注的是戏剧等等。按钮在缩略图上看(即,一切都从youtube中出现的方式减少了大小)。 YouTube自己提供了哪些选项?三方解决方案怎么样? facebo...

2  显示最新编辑的日期,而不是节点发布日期  ( Showing the date of the latest edit instead of nodes posting date ) 
我有一些我经常更新一些节点,但在内容窗格中,我可以看到节点的发布日期。 如何使Drupal 7显示最新编辑的日期,而不是发布日期? ...

3  如何以编程方式确定节点是否是OG组类型节点?  ( How to programmatically determine whether a node is a og group type node ) 
Drupal 7,OG 如何编程方式确定节点是否是OG组类型节点? ...

14  是否有功能清除模块内的看门狗日志?  ( Is there a function to clear the watchdog log inside a module ) 
我不想在调试时每次清除从UI的看门狗日志。它变得耗时和繁琐。 是否有一个Drupal函数来清除模块内的看门狗日志? ...




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


Licensed under cc by-sa 3.0 with attribution required.