将标签云链接更改为位置

时间:2011-05-26 04:00:37

标签: drupal

我正在学习Drupal,我想知道我是否可以更改来自标签云的链接。

来自标签云的链接转到... category / articles / locations / kittys

我希望它转到... content / kittys

的节点标签

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

您用于此的标记模块(tagadelic)使用默认分类法路径。

所以答案是肯定的,可以改变。例如tagcloud中的论坛(也是分类中的术语/标签)将链接到论坛主页,而不是论坛概述。这是有效的,因为tagadelic使用taxonomy_term_path()

但是,您的问题有点不清楚您希望实现这一目标的原因(以及原因)。什么是“内容/小猫”?你的问题让我相信你想链接到一个节点?为什么?标记云表示标记,标记链接到该标记内的帖子列表。

也就是说,更改外向链接的简便方法是在theme_function:to override the theme function

/**
 * theme function that renders the HTML for the tags
 * @ingroup themable
 */
function my_custom_chees_puff_theme_tagadelic_weighted($terms) {
  $output = '';
  foreach ($terms as $term) {
    $output .= l($term->name, "/link/to/anywere", array(
      'attributes' => array(
        'class' => "tagadelic level$term->weight",
        'rel' => 'tag',
        'title'  => $term->description,
        )
      )
    ) ." \n";
  }
  return $output;
}

另一种选择是覆盖一般的“应该在哪里标记链接链接到”Drupalwide。正如前面提到的forum.module所做的那样,通过hook_term_path()

function my_cheesy_puffs_kitten_module_term_path($term) {
  return 'links/to/kittens/' . $term->tid;
}

成功! BèrKessels - Tagadelic的作者和维护者:)