gpt4 book ai didi

drupal - 删除 [nid :n] in nodereference autocomplete

转载 作者:行者123 更新时间:2023-12-03 23:25:28 26 4
gpt4 key购买 nike

使用 cck 节点引用的自动完成字段始终将节点 ID 显示为隐蔽的括号扩展:

Page Title [nid:23]

我知道这可以确保在节点具有相同标题的情况下选择是唯一的,但显然这对用户来说是一件令人讨厌的事情。

有没有人成功删除这些括号或添加不同的唯一标识符?

最佳答案

最终,您需要更改 nodereference_autocomplete() 的输出在 nodereference.module 中。

要正确执行此操作,您需要一个自定义模块来干净地覆盖该函数。

这个函数被定义为一个菜单回调,因此,

/**
* Implementation of hook_menu_alter().
*/
function custom_module_menu_alter(&$items) {
$items['nodereference/autocomplete']['page callback'] = 'custom_module_new_nodereference_autocomplete';
}

然后,将 nodereference_autocomplete 函数复制到您的自定义模块中,更改其名称以匹配您的回调。然后改变这一行:
$matches[$row['title'] ." [nid:$id]"] = '<div class="reference-autocomplete">'. $row['rendered'] . '</div>';

删除nid 引用。
$matches[$row['title']] = '<div class="reference-autocomplete">'. $row['rendered'] . '</div>';

我相信此时标识符纯粹是装饰性的,这意味着您也可以随意更改文本。如果它不是纯粹的装饰,那么,我还没有测试过在错误的条件下会发生什么。

我一直想确定如何做到这一点。谢谢你用你的问题激励我。

关于drupal - 删除 [nid :n] in nodereference autocomplete,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1515722/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com