日期:2014-04-12 阅读:18886
dmandwp系统 - wordpress系统和DM系统区块建站>>
课程资料:
------------------------------
views视图:
在views里,启用自带的 Taxonomy term 这个视图。
再在高级里,把depth的深度设置一下,比如选5.
另外覆写下views-view--taxonomy-term--page.tpl.php,把多余的div去掉(这个在视频里没有漏讲了)
--------------------
关于图片,可以这样取得:假如当前内容类型是product.
在template/node/node--product.tpl.php
双击再ctrl+c可以复制源码
//pre($node); if(isset($node->field_image['und'][0]['uri'])){ $image_uri = $node->field_image['und'][0]['uri']; $style = 'thumbnail'; $smallimg = image_style_url($style, $image_uri); $bigimg = file_create_url($image_uri);//大图片 } else{ $smallimg = 'sites/default/files/default.jpg'; $bigimg = 'sites/default/files/default.jpg'; }
--------------------
那么,上面的thumbnail是从哪来的呢?
要注意两个地方,一是在admin/config/media/image-styles设置一个,
二是要在 admin/structure/types/manage/product/display/full里设置一种显示方式,在这里选择了thumbnail,则用thumbnail.
这样才会有thumbnail的图片产生,上面的使用才会有效。---这是为了这样用: render($content['field_image'])
---------------
//得到node链接
$url = url('node/' . $node->nid);
关于时间 : echo $created.'--'.$date; //1390621180--星期六, 01/25/2014 - 11:39
echo date('Y-m-d h:m:s',$created);
---------------
关于分类:
$taxoid = $node->field_cate_products['und']['0']['tid']; $term = taxonomy_term_load($taxoid); $term_uri = taxonomy_term_uri($term);//这个可以不要。 //得到分类的链接 $link = l($term->name,url('taxonomy/term/' . $taxoid)); //这是不对的 $link = l($term->name,'taxonomy/term/' . $taxoid); //这是对的。
注意: l函数 里面,不要再用url,不然,可能会重复目录。当是http://www.yoursite.com/demo1时。会出现/demo1/demo1/yourlink.php
-----------------
分类图片:
if (arg(0) == 'taxonomy' && arg(1) == 'term' && is_numeric(arg(2))) { $term = taxonomy_term_load(arg(2)); // pre($term); if(isset($term->field_image['und'][0]['uri'])){ $image_uri = $term->field_image['und'][0]['uri']; $cateimg = file_create_url($image_uri); //print $cateimg; }else{ $cateimg= 'sites/default/files/default.jpg'; } }
----------------
关于摘要:
<?php print $node->body['und'][0]['summary']?>
-------------------
require:
如果在node/node--product.tpl.php写这个
<?php require_once(drupal_get_path('theme', 'bartik').'/templates/display/grid.tpl.php');?>
会出错。$node传不过去。
---这个问题后来又好了。原因是drupal的问题,第一次加代码后,刷新下会有问题,是drupal还没有反应过来。再刷新下,就好了。怪不怪?
-----------------
-----------------------------------
第三部分操作流程:
1.用taxonomy menu模块把产品分类 创建为一个菜单。
2.用menu block模块把 第一步的分类菜单 创建一个区块。并分配到相关区域region
3. menu position模块的使用。
menu position模块: https://drupal.org/project/menu_position
这个模块,操作起来有点复杂,每一个分类,都要加一个规则。除了在内容类型上要选择,
在 only a selected taxonomy term 里也要填一个,这样就会对应上。见下面图片。
另外这个模块还提供了breadcrumb面包屑的功能。
menu position操作起来有点烦琐,其他方法请看:drupal7 面包屑 breadcrumb 的问题>>
-----------------------
context 模块:https://drupal.org/project/context
------------------------