🦄 2024 独立开发者训练营,一起创业!(早鸟优惠在1天后结束)查看介绍 / 立即报名 →

用 WordPress 做企业网站 #1 - 创建自定义内容类型,分类法与字段

用 WordPress 做企业网站或者任何其它类型的网站,我们得先考虑下怎么样去组织和管理内容,内容可以是文字,图像,文件,音频,视频 ...  WordPress 允许我们创建内容类型,每个内容类型可以放不同的内容,组织这些内容的方法就是分类法,分类法可以是分类(拥有层级关系),或者标签。

网站可能会出现的内容类型

  • 新闻
  • 关于
  • 产品

公司新闻经常更新,可以把这些内容放在 WordPress 默认的文章(post)里存储,关于是一些关于公司的内容,比如公司介绍,联系方式这些静态的不怎么更新的东西放在 WordPress 默认的页面(page)里存储。

然后我们单独为产品创建一个内容类型,因为产品可能需要用到一些自定义字段,比如产品的型号,颜色,重量等等,创建自定义内容类型和字段可以使用 WordPress 的 Pods 插件,也可以使用在主题的 functions.php 文件里添加代码来创建内容类型的方法,这种方法在 《 WordPress 自定义内容类型 》里进过。

创建自定义内容类型

这里我们使用 Pods 插件来创建和管理自定义的内容类型,分类法,还有字段。先去安装  Pods 插件。然后:

  1. 打开 Pods 管理,还没有创建 Pods 之前,可以直接看到创建或扩展的界面,点击 创建新的。
  2. 内容类型 选择 自定义内容类型,这会创建像默认的文章或页面一样的内容类型。
  3. 输入单项标签和复项标签,对于中文来说没有单复数之分,可以使用同样的标签,比如 产品。
  4. 点开 高级 ,然后输入 识别符,这个识别符是内部程序使用的,所以必须使用字母来定义,比如 product
  5. 点击 下一步,可以进一步编辑这个内容类型,你可以为它添加字段,也可以修改各项标签上的文字,还有一些高级设置。
  6. 完成以后,点击 Save Pod

QQ20130517-2

QQ20130517-3

完成以后,你会在管理边栏菜单上,看到 产品 菜单,点击打开,可以添加,管理产品内容。

QQ20130517-4

创建自定义分类法

你可以为新创建的 产品 这个内容类型分配使用分类的方法,可以使用 WordPress 默认的两个方法,分类或标签,在 产品 这个 Pod 的 高级选项 里,可以勾选使用的分类法。或者,我们可以去创建新的分类方法,然后分配给 产品 这个内容类型。方法是:

  1. 打开 Pods 管理,点击 添加,选择 创建新的。
  2. 内容类型 选择 自定义分类法。
  3. 比如我们要创建一个叫 类型 的分类方法。所以 单项和复项标签,可以输入 类型。
  4. 打开 高级,在识别符里输入使用字母定义的分类方法的内部程序名称,比如 type
  5. 点击 下一步。修改各种配置,完成以后,点击 Save Pod

这样我们就有了一种新的分类方法,也就是 类型。你可以找到之前创建的 产品 内容类型,在 高级选项 里,勾选一下 类型 这个分类法,这样在发布 产品 内容的时候,就可能同时使用 类型 这个分类法来分类产品内容了。

QQ20130517-5

QQ20130517-6

为内容类型添加额外的字段

内容类型默认会有标题和主体文字字段,你可以添加新的字段到内容类型上,比如可以添加上传图像的字段,可以输入新的内容的文本字段,可以选择日期或颜色的字段等等。为 WordPress 的内容类型添加字段的方法是:

  1. 打开 Pods 管理,编辑一下你想添加字段的内容类型,比如之前创建的 产品 这个内容类型。
  2. 在 管理字段  选项卡中,点击 添加字段。
  3. 输入字段的标签,比如添加一个产品图像字段,输入 产品图像
  4. 输入名称,注意这是程序内部使用的名称,所以只能使用字母,数字或者下划线来定义,比如 prodoct_images
  5. 选择字段类型,这里选择 File / Image / Video (文件,图像,视频),注意不同的字段类型可以用不同的形式收集和存储内容。
  6. 点开这个字段的其它的选项卡,可以进一步去配置。
  7. 完成以后,点击 保存字段。

打开添加产品的界面,你会发现新添加的字段会出现在这个界面上。

QQ20130517-7

QQ20130517-8

总结

想一下,你为什么需要创建新的内容类型,在什么情况下你需要创建新的内容类型。如果你觉得网站里的内容之间有本质的区别的时候,或者这些内容上会使用不同的字段,分类法的时候,你就应该考虑创建新的内容类型和分类法来管理内容了。因为这样你可以更清晰的管理内容,为不同的内容类型添加不同的字段,分类法等等。

练习

  1. 使用 Pods 插件创建一个新的内容类型(像文章或页面那样的内容类型)。
  2. 使用 Pods 插件创建一个新的分类法,并分配给第一步创建的内容类型使用。
  3. 为第一步创建的内容类型添加一个可以上传图像的字段。
附件: 
Package icon pod-zh_cn.zip WordPress

评论

十分详细的课程,感谢站长的热心提供。
我从WordPress官网下载了Pods插件,功能确实强大,但是里面都是英文的界面,可否分享Pods插件的汉化版?
谢谢。

Pods 的翻译得校对一下。我先传上来吧,请看这个文章的附件。解压以后放在:wp-content/plugins/pods/languages

写的很好 转载下!

请问wordpress上又没有drupal上views这么强大的插件啊

我也在找,会有的。现在没有以后也会有,我知到已经有人在做了,但最后搞成什么样不太确定。

已经完成本文最后一个图的那样但是发布后,图片不显示嘛?

嗯,你得在模板文件中添加相应的代码来显示字段里的内容,可能参考:http://podsframework.org/docs/

求教怎么加?

呵呵,好吧,我总结下,然后写写。

发现个挺好的插件 Just Custom Fields 但是不会调用 太菜了 不会代码 说明文档也看不懂,能否写个这类的博文 :(

WordPress 自定义字段的插件挺多,我们在课程里讲过 Advanced Custom Fields ,也是非常棒的插件,这篇文章里介绍的 Pods 插件也非常强大。看来我们得有选择了。

宁浩老师你好,请问,wordpress 有没有可以发布产品和求购信息的供求插件可以使用呀。

需要特别的功能吗?我觉得可以使用自定义内容类型。新建一个内容类型叫 产品,再新建一个内容类型叫 求购。分配给用户权限可以发布内容到这两个内容类型上。

多谢宁浩老师,可是当用户上传图片时,可以看到媒体库中的所有图片,有没有什么办法或是插件可以控制用户,让用户只能看到和操作自己上传的图片呢。

我想应该有插件可以做到,我留意一下。找到告诉你。

好的。多谢宁浩老师。

全套教程599太贵了,我只想买这个插件图片调用的方式可以吗,多少钱?

全套教程599太贵了,我只想买这个插件图片调用的方式可以吗,多少钱?我的qq, 450934025 全天在线等

谢谢,问一下就行了,不用给钱。你可以这样做 :$pods = new Pod('post'); $pods->findRecords('name ASC'); $posters = $pods->get_field('poster'); foreach($posters as $poster)
{ echo wp_get_attachment_image( $poster['ID'], 'thumbnail' ); } 。非常抱歉没有更好的格式,这里的 post 就是一个 pod ,也就是默认的文章,里面的 poster 是文章上的一个图像字段。

把上面的代码放在文章的模板文件里,会显示出在文章里,使用 poster 字段上传的所有的图像。

居然可以免费,真是太感动了,如果赚钱了,我会第一时间过来买全套教程。 真的非常感激你的代码,不过我现在比较菜鸟,不知道怎样用代码,我的数据库前缀是p_ 用下面这种输出方式无效,求指点迷津 <?php echo $pods = new Pod('post'); $pods->findRecords('name ASC'); $posters = $pods->get_field('poster'); foreach($posters as $poster) { echo p_get_attachment_image( $poster['ID'], 'thumbnail' ); }; ?>

我是直接扩展默认的文章,没有新建内容模型

先为文章添加一个可以上传图像的 poster 字段,然后再去试试。

添加了字段的, 我上面贴的输出代码没有问题吧?

poster [id: 31] poster File / Image / Video

请教pods可不可以把自定义文章类型的固定链接改为**/**.html 类型?

木有回复....

嘿嘿。关于 Pods 这个插件,打算在以后出个课程。

想问皓哥,这个创建了新的内容类型后,里面的文章调用出来在列表页如何做分页呢?

之前啊我用了一个叫 wp-pagenavi 的插件。https://wordpress.org/plugins/wp-pagenavi/

微信好友

用微信扫描二维码,
加我好友。

微信公众号

用微信扫描二维码,
订阅宁皓网公众号。

240746680

用 QQ 扫描二维码,
加入宁皓网 QQ 群。

统计

14696
分钟
0
你学会了
0%
完成

社会化网络

关于

微信订阅号

扫描微信二维码关注宁皓网,每天进步一点