【问题标题】:Finding a $cid based on $nid in drupal在drupal中根据$nid查找$cid
【发布时间】:2009-03-27 22:10:51
【问题描述】:

我在 drupal 中有一个节点。我希望能够输入一个节点 ID,然后让它输出在该节点上创建的单个评论 ID。我该怎么做呢?谢谢。

【问题讨论】:

    标签: php drupal


    【解决方案1】:
    $mycid = db_fetch_object(db_query('SELECT * FROM {comments} WHERE nid = %d ORDER BY RAND() LIMIT 1', $mynid));
    return theme_comment_view($mycid,$mynid);
    

    $mynid 是您要加载的节点 ID。此代码将获取您的节点 ID 并从该节点的 cmets 呈现随机注释。

    检查here

    【讨论】:

    • 谢谢,这就是我正在寻找的概念。我似乎无法让它呈现评论。我是否需要做一些事情而不是 comment_render 或其他一些特殊的事情?再次感谢。
    • 对不起,我应该使用theme_函数。我编辑了代码。它现在应该可以工作了。
    • 我使用的是 drupal 5.x,它似乎不支持在 theme_comment_view 中将 $node 作为参数。有没有办法让函数从节点中获取 $cid 而不是评论的所有文本?我认为这对我正在做的事情会更容易。
    • 在 drupal 5 (api.drupal.org/api/function/theme_comment_view/5) 上你可以使用 theme_comment_view($mycid)
    • 嗯,它似乎仍然没有返回任何东西。如果我尝试只输出 $mycid 它也没有给我任何东西。它应该给我 $cid 的号码正确吗?
    【解决方案2】:

    您希望它成为自己的页面吗?在节点的页面上?在一个街区?你想要一个特定的评论还是只是一个随机的评论?您想如何“输入”节点 ID?

    在大多数情况下,我可能会使用the Views module 执行此操作。创建视图时,您可以将类型设置为“评论”,将过滤器/参数设置为特定的节点/节点类型并将其限制为单个评论。如果您想要一个页面或一个块,视图可以简单地为您创建它们。如果您想显示整个评论或部分评论,Views 可以解决这个问题。如果你想将它们嵌入到其他页面中,通过 PHP 将视图嵌入到另一个页面中仍然相对容易。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-09-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-05-04
      相关资源
      最近更新 更多