在我的Drupal驱动的网站上,我想列出节点页面顶部的可用下载(在一个狭窄的浮动内:右边 在我的主题中,我已经覆盖了 在该 如果我手动将这个#weight修改为-1,我的自定义附件列表会显示我想要的位置,浮动在内容区域顶部的右侧. 但是,我不想手动破解核心文件 如何/在哪里修改 你需要一个模块才能做到这一点,而不仅仅是一个主题.模块可以实现hook_nodeapi(),这将使它有机会在呈现之前更改该$ node-> content数组的内容.例如,如果您的模块名为"upload_tweaker",则使用以下函数: 在此"nodeapi"事件期间,每个模块都会在更改节点时遇到问题; 如果要更改由一个模块添加的内容,则需要确保模块在其后加载.这可以通过命名类似'zzz',或通过更改站点数据库的系统表中的"权重"字段来完成.模块可以像表单元素一样加权. api.drupal.org有更多信息.theme_upload_attachments()
函数以生成upload.module
文件中是控制页面上列出附件的位置的代码:// function upload_nodeapi(), line #284 of upload.module
$node->content['files'] = array(
'#value' => theme('upload_attachments', $node->files),
'#weight' => 50,
);
upload.module
,因为我的更改将在下次应用升级时丢失(例如,对于安全补丁).content['files']
主题代码中的#weight ?
或者,我是否采取了错误的方式?
1> Eaton..:function upload_tweaker_nodeapi(&$node, $op) {
if ($op == 'view') {
$node->content['files']['#weight'] = -1;
}
}
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有