我们在 《 Drupal 7 : 字段 视图 关系(下)》里介绍了一些创建内容关系和利用内容之间关系的方法,Drupal 在这方面成熟些。我们这次想在 WordPress 上实现类似的功能。
一个复杂的网站会拥有不同的内容类型,网站的内容之间也会拥有某种关系,比如一个电影网站,可能会有电影资料,人物资料,视频,图片这些内容类型。发布电影资料的时候,你可能会想去关联一些与这部电影相关的人物内容,当然,你可以手工在电影资料中插入人物内容的链接,或者,你可以创建与人物内容之间的关系。
当电影资料与人物内容之间有了这种关系以后,你可以利用这些关系,去做很多事情,你可以在电影内容上去动态显示相关的人物内容的字段,人物的名称,简介,头像 ... 反过来,你也可以在人物内容上,显示出所有关联他的电影资料,也就是当前这个人物出演或参与的电影,你可以显示电影的名称,介绍,海报等等。所有这些,都可以在创建电影与人物内容关系以后自动完成。
我们可以动态的为每个电影资料创建与这部电影相关的所有相关的人物页面,也就是一个可以显示电影相关的所有人物的页面。你也可以为人物去创建这个人物参与的所有电影的页面。
在创建内容与内容之间关系的时候,我们可能需要为这个关系添加点描述内容,比如,当发布电影资料关联人物的时候,你需要添加每个人物在当前这部电影中的角色的名称,还有具体的工作是什么( 演员,导演,编剧... )
我们再来举个例子,一个音乐网站,可能会有的内容类型:歌曲,专辑,人物 ... 创建专辑内容的时候,可以去关联专辑里的歌曲,还有专辑相关的人物,比如歌手,作曲,作词 ... 你也可以允许用户自己去混合歌曲,组合成新的专辑 ,比如,《 适合睡前听的音乐 》 ...
WordPress 解决方案
创建自定义内容类型,可以使用 WordPress 的 register_post_type() 函数,把代码放在当前主题 functions.php 里就行,或者也可以使用插件,好处是提供了用户界面,不需要代码,可以试试 Custom Post Type Maker 插件。
创建内容与内容之间的关系,最后确定使用 posts to posts 插件,它允许我们创建不同类型的连接,文章对页面,电影资料对人物资料 ... 提供了一个漂亮的界面,可以搜索想要相关的内容,甚至可以直接创建还没有的内容,可以拖放排序 ...
关于创建新的页面来显示电影相关的所有的人物,这个可以使用 WP_Router 插件,我们可以创建地址重写规则来动态创建页面,可以指定模板文件,传递来自地址的参数,这样我们就有能力动态的创建想要的页面内容了。
结语
这些只是目前做的一点功课,还有很多东西没能实验或实现,希望可以尽快整理成一个系统的课程给大家。
WordPress
评论
wordpress适合网站建设的初学者,但是要想深入研究也不是太容易,反而入门比较难的joomla和drupal入门之后会更加容易一些,是这样的吗?
11 年 8 个月 以前
WordPress 用起来容易些,不过开发的时候很多东西没有提供现成的用户界面,比如自定义内容类型,分类法,字段,可以创建各种内容列表的视图 ... 还好现在有插件可以帮助我们,有些在未来应该可以进入到 WordPress 的核心。WordPress 提供了很多实用的函数,用这些东西,不一定需要会编程,很多一看就明白怎么用,比如在主题的模板文件中显示内容的标题,可以使用 the_title() ,显示文章的内容可以使用 the_content() ,输出文章的地址,可以用 the_permalink() ...
:)
11 年 8 个月 以前
Wordpress 的主题系统很灵活,甚至可以单独为某一篇文章去创建模板文件,比起 Joomla 来说,要好很多,跟 Drupal 有点类似。
11 年 8 个月 以前
您至少更新一点博客呀,课程不用太着急的
11 年 8 个月 以前
更新課程很重要啊~每月月初我都期待有新課程可以學習啊~加油王浩老師!
Wordpress真的很值得一學,靈活,輕巧且易懂,很希望可以深入學學這個網站利器~
11 年 8 个月 以前
wordpress ,
Gravatar头像被墙 浩哥有没有办法解决
9 年 11 个月 以前
我也不知道有方法解决,不过你可以禁用 gravatar 。
9 年 11 个月 以前