Drupal:将块分配给特定内容类型
-
30-09-2019 - |
题
每当请求类型myNode的节点,然后自动使用Node-mynode.tpl.php时,我就制作了一个称为Node-mynode.tpl.php的自定义模板。
但是,现在用户希望在这种情况下看到一个特定的菜单块。
问题:如何将块分配给特定内容类型?
提示:我已经开始使用Pathauto看URL别名。我怀疑一个解决方案可能朝这个方向朝下。
解决方案
给你所有的 mynode
类型节点一个自动别名,以 /mynode
并使用该块的特定可见性设置,仅在以开始的页面上显示 /mynode/*
.
其他提示
在Drupal 6中,您可以配置块的可见性设置。单击管理员后端中块旁边旁边的“配置”链接,然后按照以下步骤 -
1)在“页面特定可见性设置”选项卡下选择“显示以下PHP代码返回True(仅PHP模式,专家)”选项。
2)输入以下PHP代码,该代码检查当前节点的节点类型并相应地返回true-
<?php
if( arg(0) != 'node' || !is_numeric(arg(1)) )
{ return FALSE;
}
//load a fully-populated Drupal node object
$temp_node = node_load(arg(1));
if( $temp_node->type == 'mynode' ) //check the node type
{ return TRUE; //display block
}
?>
这应该有效...
您可以使用上下文模块
不隶属于 StackOverflow