Drupal6:如何处理用户配置文件属性中的节点链接?

时间:2009-08-27 18:44:05

标签: drupal-6 hyperlink

我的用户个人资料中的一个字段是节点列表。 (此列表是根据站点上的其他数据自动生成的。)目前,它显示如下:

  

节点

     

nid1,nid2,nid3

我希望它看起来像这样:

  

节点

     

$ nid1-> title,$ nid2-> title,$ nid3-> title

其中每个标题都是其节点的链接。做这个的最好方式是什么?我尝试使用l()生成的链接填充该字段,但是html被过滤掉了。

另外,当使用l()时,有没有办法说:创建一个带$ nid的节点的链接,无论它在运行时恰好位于何处?

1 个答案:

答案 0 :(得分:0)

关于第一个问题:

配置文件列表的字段值是通过'check_plain()in profile_view_field()`来运行的,所以你只能在它们加载后在那里得到标记,这将留下至少两个选项,具体取决于在你想改变输出的地方:

  1. 实施hook_user(),并在“查看”操作中修改$ account->内容数组中的字段值(确保您的模块权重低于配置文件模块的权重或价值不会在那里。)

  2. 为使用字段的所有模板添加自己的预处理函数,并在那里进行调整。乍一看,这些应该是以下内容,但列表可能不完整:

    1. yourModule_preprocess_profile_block()(个人资料模块)
    2. yourModule_preprocess_profile_listing()(个人资料模块)
    3. yourModule_preprocess_user_profile_item()(用户模块)
  3. 至于第二个问题:

      

    另外,当使用l()时,有没有办法   to say:创建一个到节点的链接   $ nid,无论它碰巧在哪里   位于运行时?

    我不明白你的意思是“无论它碰巧位于运行时”。以下未涵盖的任何内容?

    l('SomeTitle', 'node/' . $nid)