首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何构建在页面上显示结果的Drupal6用户表单?

如何构建在页面上显示结果的Drupal6用户表单?
EN

Stack Overflow用户
提问于 2009-10-02 09:46:48
回答 2查看 2.8K关注 0票数 2

我想建立一个在左侧的搜索表单和内容(中心)部分的结果网站。

我知道如何创建模块..但是我怎么分配他们的位置呢?或者我应该将搜索表单作为块放置,并将它们分配给build/ BLOCK /中的LEFT。

搜索表单有3个文本框,不需要任何文本框。“姓名”,“姓氏”,“年龄”

无论用户输入什么,我都希望在模板的中心部分显示结果。

显然,form会将变量作为$_POST发送

但是在结果页中,如果有5个以上的结果,我想添加分页。

那么,我应该如何为<a href="?"构建链接呢

我希望有像/search//Smith/24search/John//15search/John/Smith/40这样的cleanURL来响应“姓名,年龄”,然后在使用分页时添加/search/john/smith/40/page/3

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2009-10-02 10:25:25

好的,首先,我第二个googletorps建议先看看基于的解决方案,因为它可以为你节省相当多的自定义代码。然而,我经常发现,基于视图的解决方案只能提供我所需的80%,而添加缺少的20%的视图可能比自定义解决方案从一开始就更麻烦-检查带有暴露的过滤器的视图,看看它是否合适。

如果没有,这里有一些提示,可以帮助您开始使用自定义解决方案:

  • 对于搜索表单来说,块是正确的选择。看看hook_block()如何创建一个(你至少需要实现操作'list‘和'view’才能通过build/block实现)正如你在操作'view‘上所说的
  • ,你将构建你的表单。看看用于在Drupal中处理表单的forms API Quickstartreference (不要手动构建您自己的表单- Drupal forms API只需要一点习惯,将来会为您节省大量时间)
  • 对于结果页面,您需要为您想要的路径注册自己的页面回调函数,请参阅hook_menu()。搜索您建议的路径‘
    • Warning: /...’会与Drupals内置的搜索路径冲突,因此您可能会考虑选择一个细微的变化(例如' search /people/...‘或“peoplesearch/”或like)

对于Drupal中的链接创建,使用l()函数

  • 进行分页您可能能够使用theme_pager,但这取决于实际搜索查询的结果如何,因为它需要一个查询字符串参数数组来构建查询
票数 5
EN

Stack Overflow用户

发布于 2009-10-02 10:00:52

你可以按照你描述的方式来做这件事。您需要使用hook_menu来构建urls,使用hook_block来创建搜索表单块,然后使用l()函数来创建链接。但是,在您自己的自定义模块中完成所有这些操作将需要大量时间。进行查询搜索等。相反,我会建议你做的是使用视图模块来完成这一切。有了它,你可以很容易地创建一个搜索表单,但使用公开的过滤器,你可以为它创建一个页面和一个块,做分页和所有这些只需点击几下。因此,即使您是一名优秀的php开发人员,在这种情况下最好的做法是简单地使用Drupal以views模块的形式提供的内容,并使用AI来设置它,而不是编写一堆代码。如果您确实打算创建自己的模块,那么可以在api.drupal.org上查看这些函数,在那里您可以找到drupal core的文档。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1508648

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档