列出链接到相应分类节点的分类术语

发布于 2024-10-11 15:19:25 字数 264 浏览 8 评论 0原文

在 drupal 中,安装分类节点模块后,我可以创建一个解释分类术语的节点。效果很好。

现在,我想列出给定节点的分类术语,其中列表中的每个术语都是到该术语的节点的链接。

换句话说:

$listOfTaxonomyTerms = taxonomyTermsByNode($nodeID);

$linkToTaxonomyNode = TaxonomyNodeLinkByTerm($listOfTaxonomyTerms[0]);

in drupal, after installing the taxonomy node module, I can create a node explaining the taxonomy term. That's working fine.

Now, I would like to list the taxonomy terms of a giving node where each term of the list is a link to the node of that term.

In another words:

$listOfTaxonomyTerms = taxonomyTermsByNode($nodeID);

$linkToTaxonomyNode = TaxonomyNodeLinkByTerm($listOfTaxonomyTerms[0]);

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

葬シ愛 2024-10-18 15:19:25

我很抱歉回答我自己的问题。它不适合评论文本区域。

我想我只需要提出问题就可以开始思考答案。
所以,我在 template.php 上做了一个函数。这会收集分类节点的 url,并与分类术语建立一些链接:

function listaNodeSectores($geturl){
    //get alias of URL
    $path = drupal_get_path_alias($geturl['q']);
    //break path into an array
    $pathArray = explode('/', $path);
    $arraysize = sizeof($pathArray);

    if ($arraysize>0) {
      $nodeId = $pathArray[$arraysize - 1];
    }
//  echo "nodeID: ".$nodeId;

    $node = node_load($nodeId);
    $termos = taxonomy_node_get_terms($node);

    foreach($termos as $term){
        $termNodeID = _taxonomynode_get_nid_from_tid($term->tid) ;
        $termNode = node_load($termNodeID);

        $tmp = $pathArray;
        $tmp[$arraysize - 1] = $termNodeID;
        $tmp2 = implode('/', $tmp);
        // devolve os urls completos:
        $termNodeUrls[] = '<a href="'.url($tmp2).'">'.$termNode->title.'</a>';

    }

    return  $termNodeUrls;
}

I'm sorry to answer my own question. It wouldn't fit the comment text area.

I guess I just needed to make the question to start thinking about the answer.
So, I made a function on template.php. This collects the urls to the taxonomy nodes and makes some links with the taxonomy terms:

function listaNodeSectores($geturl){
    //get alias of URL
    $path = drupal_get_path_alias($geturl['q']);
    //break path into an array
    $pathArray = explode('/', $path);
    $arraysize = sizeof($pathArray);

    if ($arraysize>0) {
      $nodeId = $pathArray[$arraysize - 1];
    }
//  echo "nodeID: ".$nodeId;

    $node = node_load($nodeId);
    $termos = taxonomy_node_get_terms($node);

    foreach($termos as $term){
        $termNodeID = _taxonomynode_get_nid_from_tid($term->tid) ;
        $termNode = node_load($termNodeID);

        $tmp = $pathArray;
        $tmp[$arraysize - 1] = $termNodeID;
        $tmp2 = implode('/', $tmp);
        // devolve os urls completos:
        $termNodeUrls[] = '<a href="'.url($tmp2).'">'.$termNode->title.'</a>';

    }

    return  $termNodeUrls;
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文