【问题标题】:How remove node ID [nid:n] in NodeReference fields如何在 NodeReference 字段中删除节点 ID [nid:n]
【发布时间】:2010-04-30 10:47:53
【问题描述】:

这是这个链接的同一个问题:

Removing [nid:n] in nodereference autocomplete

根据第一个答案(Grayside),我创建了自己的模块并激活了。然后我创建一个新内容,我在 nodereference 字段中查找某事并最终选择它 -> 它可以工作(没有出现 [nid:n])。

但是,当我查看/预览或保存或编辑内容时,[nid:n] 再次出现。

有人可以帮帮我吗?

【问题讨论】:

    标签: drupal drupal-6 cck drupal-fapi


    【解决方案1】:

    查看节点时,字段的主题化功能决定了显示的内容,因此如果要更改输出,则需要覆盖它。

    编辑节点时的值,由#default_value属性决定,所以你需要在hook_form_alter()中更改

    【讨论】:

      【解决方案2】:

      感谢您的回答。

      我找到了解决方案。 (至少在我的情况下)

      我更改了这个文件的代码:

      drupal\modules\cck\cck\modules\nodereference.module

      function nodereference_autocomplete_value($element, $edit = FALSE)
      {
        ...
        // $value .= ' [nid:'. $nid .']';    --> Comment this line
        return array($field_key => $value);
      }
      

      效果很好!在任何情况下都不出现:不在列表中选择,也不在保存、编辑等时出现。

      问候!

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2021-06-15
        • 1970-01-01
        • 1970-01-01
        • 2015-10-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多