userpage主题 -- theming 领域 和 users 领域 drupal 相关 的问题

Theming the userpage


2
vote

问题

中文

我想用一些更改修改userpages:

  1. 更改页面标题
  2. 隐藏一些或全部本地TAKS项目(标签)
  3. 显示一些用户信息
  4. 插入视图

这里是我如何解决它:

  1. 使用 tomename_preprocess_page()改变标题
  2. 使用 tomene_menu_local_task()隐藏标签
  3. 使用用户配置文件。 tpl.php 显示用户信息
  4. 创建一个视图和使用视图_embed_view()

有更好的方法吗?我应该考虑使用 page--user.tpl.php 还是组合?

编辑:涉及Drupal 6

英文原文

I want to modify the userpages with some changes:

  1. change the page-title
  2. hide some or all of the local taks items (the tabs)
  3. display some user-infos
  4. insert a view

Here is how I want to solve it:

  1. use THEMENAME_preprocess_page() to change the title
  2. use THEMENAME_menu_local_task() to hide the tabs
  3. use the user-profile.tpl.php to display user infos
  4. create a view and use views_embed_view()

Is there a better way of doing that? Should I consider using page--user.tpl.php or a combination?

Edit: concerns Drupal 6

     
   
   

回答列表

1
 
vote
  1. 是的,themename_preprocess_page()对此很好,但是可以争辩说它更好地实现 hook_user 当$ op =='查看'时。这样您将使所有主题(谁知道您将从现在几个月添加移动主题(谁将增加移动主题)?)。
  2. 我不会为此使用themename_menu_local_tasks(),而是在themename_preprocess_page()中执行 9988877662 。当然,只为用户页面执行此操作,否则您将丢失所有页面上的标签。
  3. 是,使用user-profile.tpl.php打印出变量。如果您需要其他变量,请在themename_preprocess_page()中获取它们,然后将它们添加到$变量阵列中,以使它们在模板中可用。取决于您需要做的内容,另请参阅 user-profile-category.tpl.php , user-profile-item.tpl.php 及其各自的预处理函数。
  4. 是的,这是一个选择。您还可以创建该视图的块显示,并在用户页面上启用块。

如果可以,我建议不要使用多页模板(如页面-USER.TPL.php)。当您这样做时,将更改为Page.tpl.php,通常需要应用于所有其他页面模板,这是一个钻孔。

 
  1. Yes, THEMENAME_preprocess_page() is fine for this, but one could argue that it's better to implement hook_user when $op == 'view'. That way you would make the change available for all themes (who knows you will be adding a mobile theme a couple of months from now?).
  2. I wouldn't use THEMENAME_menu_local_tasks() for this, but instead do $variables['tabs'] = ''; in THEMENAME_preprocess_page(). Of course, only do this for the user page, otherwise you will lose the tabs on all pages.
  3. Yes, use user-profile.tpl.php to print out variables. If you need additional variables, fetch them in THEMENAME_preprocess_page() and add them to the $variables array to make them available in your template. Depending on what you need to do, see also user-profile-category.tpl.php, user-profile-item.tpl.php and their respective preprocess functions.
  4. Yes, that's an option. You can also create a block display of that view and enable the block on the user page.

I recommend not to use multiple page templates (like page-user.tpl.php) if you can. When you do, a simple change to page.tpl.php will often need to be applied to all other page templates as well, which is a bore.

 
 
0
 
vote

要更改配置文件页面的标题,请使用 hook_username_alter(),或其他答案中提到的其他方法。

 

To change the title for profile page use hook_username_alter(), or the other method as mentioned in the other answer.

 
 
 
 

相关问题

0  帮助在template.php中的函数  ( Help with function in template php ) 
drupal 7. 任何人都可以发现这个功能有什么问题吗?我只是想拉一个分类学期或其父母。分类学称为"Pubissue" 。 在template.php中: function ain_core_getpubname() { // Load the node from unaliased url if ((...

2  从自定义模块渲染一个完整的整个HTML页面  ( Render a full entire html page from custom module ) 
我在没有成功的情况下搜索/问道。 我正在创建一个自定义drupal 7模块,我想在空的完整模板中呈现代码(不是页面/ node.tpl.php);通过完整模板,我的意思是包含 <html> 标记的模板。 自现在,我使用了以下代码,但模板在Page.tpl.php( 99887661 )中呈现。 function...

0  如何删除这部分?  ( How do i remove this part ) 
我创建了一个内容类型,但它不使用以下部分。我想在不使用CSS的情况下删除它。我怎样才能完成? ...

0  显示具有视图格式的一个节点的多行中的字段  ( Displaying fields in multiple rows for one node with views format ) 
在一个视图中,我需要在多行中显示节点的字段,我如何实现这一点? 节点包含: port1name port1arrival port1departure Port2 Port2Arrival port2departure port3name port3arrival port3departure 我需...

3  谷歌丰富的片段,自定义内容类型  ( Google rich snippets custom content type ) 
我使用drupal 7。 我有一个自定义内容类型,其中包括 fivestar 额定值。 我想拥有我的节点内容,丰富了icrodata / microformarts / RDF,以便它出现在Google丰富的片段中。 我尝试了RDF模块,但它无法在Fivestar模块的结果上进行详细的形成,因为Fivestar产生评...

3  预处理视图字段  ( Preprocess view fields ) 
我有一个视图,一些字段我主题 views-view-fields--MYVIEW.tpl.php 。我使用 phptemplate_preprocess_views_view_unformatted__MYVIEW() 以预处理一些 99887669 在模板之前将模板与清洁。但我不知道预处理领域的正确方法。 我可以...

1  在Drupal 7中输出词汇量非常糟糕  ( Very bad thing of output the vocabulary in drupal 7 ) 
我为"文章" 内容类型创建了四个词汇表。 我想输出属于节点的词汇表;当我使用<代码> print render($conetent['field_vocab']) 时,它输出词汇表,但HTML结构太糟糕了;更无用的 <div> 和课程让我发疯。要删除它们,我将其它输出: $content['body']['#ob...

3  如何在Drupal 7中显示特定表单?  ( How to display specific forms in drupal 7 ) 
我需要在同一页面上显示系统登录表单和系统注册表单,但面板不同的面板(不是默认值)。我不希望使用表单API从头开始构建表单。我想从系统中提取应计表单并使用它们。在登录前,结果应该很像Facebook的主页,在同一页面上您可以登录或注册。我想从代码中完成所有这些,而不是来自模块,而是从页面。我有一个特殊功能,将为主页显示...

2  在同一节点和视图中使用多个模板  ( Using multiple templates for the same node views ) 
好的,我的问题是,我希望能够在Drupal 7站点上以简单的形式管理事件。我创建了相关的内容类型并插入了一些虚拟内容,一切都很好。然后,我继续创建用于以各种形式显示此操作的视图(1即将到来的事件查看,1用于存档/过去的事件)。这些似乎再次工作。现在问题来了,当我想在此内容类型的页面上显示此内容类型的视图时,因此您转到...

2  几个字段模板或节点模板?  ( Several field templates or on node template ) 
试图弄清楚字段模板是错误的方法... 我被告知并同意您最终应避免创建节点模板并尝试在击中主题层之前处理事物。我相信这是因为你稍后想要为主题添加更多空间,而数据变化应该与正确的实体保持一致......至少一个字段模板如果不是模板预处理,NodeApi等。 所以...如果我有一个节点类型,需要我最终用3-5个字段模板,...

2  寻求iPhone / iPad JavaScript / jQuery Libs,Technice和Tutorials  ( Seeking iphone ipad javascript jquery libs techniques tutorials ) 
客户想要ipad&amp; iPhone支持具有至少一种形式的WebApp,其中在(Raphael)画布上拖动DOM元素(JavaScript呈现的图形)。 目前,触摸不友好的接口拖动围绕resement使用mouse-hover和其他鼠标状态来处理拖动项界面。我知道我需要一种完全不同的触摸屏设备方法,我想知道是否...

1  将代码放入Template.php文件中?  ( Put the code into the template php file ) 
field_course_video_slide_sync2 这个代码是我为node.tpl.php写的那个,它太糟糕了。有没有办法将代码放入Template.php文件中?我该怎么办? ...

20  如何覆盖一些管理主题CSS规则? [关闭]  ( How to override some admin theme css rules ) 
关闭。这个问题需要更多聚焦。它目前不接受答案。 想要改进这个问题?更新问题,因此它仅拍摄了一个问题,只有编辑此帖。 关闭 6年前。 ...

1  Drupal 7 - 现场模板 - $ Item - IMG标签  ( Drupal 7 field template item img tag ) 
在Drupal 7主题中,我有以下文件: 字段 - field_photo.tpl.php clearfix"&gt; &gt;: &gt; $项目):?&gt; "&gt; 内部渲染($ Item)呈...

2  我可以在使用预处理挂钩时指定.tpl.php的位置吗?  ( Can i specify the location of a tpl php while using preprocess hooks ) 
如果我使用下面的代码覆盖模板文件,我可以指定 Undefined index: nl 5 的位置吗?我想在我的模块目录中留下页面-Ajax.tpl.php,而不是将其放在当前主题的文件夹中。 Undefined index: nl 6 ...

2  无法在视图模板中打印字段  ( Cant print fields in a view template ) 
我将用视图覆盖drupal /博客路径。创建了一个新的视图页面显示并设置博客的路径。创建视图 - 查看-unformatted - 博客 - 页面。尝试以这种方式输出视图字段: <?php print $fields['title']->content; print $fields['body']->cont...

2  在块模板文件中添加“我的邮件(x)”链接  ( Adding a my messages x link in the block template file ) 
我已安装 privatemsg ,我需要以编程方式输出"我的邮件(x)" 链接在block.tpl.php中。 我尝试了以下代码,但它只打印"我的消息" ,当我需要新消息的计数器时: NodeForm0 ...

3  如何主题用户个人资料页面?  ( How to theme the user profile page ) 
我必须修改的文件是什么,以便让drupal输出自定义用户页面。 我需要更改的文件的默认链接是: http://www.example.com/?q=user/xx 其中xx是用户标识。 此页面没有正确使用,我想修复它,但我如何知道哪个文件是drupal调用? 在drupal 7默认页面和链接上有一个参考指南...

5  主题系统的局限性是什么?  ( What are the limitations of the theming system ) 
可以在包含/主题中的每个主题函数都被模板(* .tpl)文件覆盖? 可以使用预处理函数来将变量添加到任何主题函数? ...

1  一个模块,用于在管理区域中添加显示为列的字段  ( A module to add a field for display as a column in the administration area ) 
我想在我的站点的管理区域中显示一个包含电子邮件地址的列地址。有谁知道这样做的模块? ...




© 2021 it.wenda123.org All Rights Reserved. 问答之家 版权所有


Licensed under cc by-sa 3.0 with attribution required.