我应该使用自定义分类还是自定义帖子类型

时间:2011-06-05 作者:Danny

我最近接受了一位客户的一个项目,经过多次劝说,我终于将网站置于某种CMS之下。我对Wordpress很陌生,我有ExpressionEngine的背景,想尝试一些新的东西来改变,所以请原谅我缺乏知识(我正在尽最大努力!:D)。

现在我面临的问题是,他们对如何在网站上显示内容以及更重要的是如何管理内容有非常具体的指示。他们是一家旅行社,我目前正在整理度假村目录,其中将显示他们提供的所有度假村。

就目前的目录结构而言,它将由4个不同的部分组成。为了让您更好地了解我希望事情如何运作,请查看下面的层次结构(我以土耳其为例,这些层次结构需要是动态的):

  • /destinations/
    这将是我们的目的地页面,将列出他们当前提供的所有国家/地区。我认为这是一个静态页面,包含一些关于提供服务的国家的内容,以及下面的国家列表(These will be our parent taxonomies).

  • /destinations/turkey/
    这将是我们的父分类法。该页面还必须能够添加一些静态内容,以插入有关国家及其位置的信息。下面是第二个列表,这些是土耳其的不同地区(These will be children of the parent taxonomies).

  • /destinations/turkey/belek/
    这将是我们的子分类法,此页面还需要能够添加一些静态内容。它还将包括我的客户在此位置提供的度假村列表(These will be our entries/posts).

  • /destinations/turkey/belek/resort-name
    这将是我们的帖子/入门页面,这里我们将有关于精选度假村的所有信息,这方面的细节不是问题,我已经对此进行了分类。

    现在,我已经读了很多关于自定义帖子类型、自定义分类法及其功能和用途的书,但我现在遇到了一个无法决定应该走哪条路的情况。在过去的几个小时里,我一直在试验one custom post type (针对度假村)和one hierarchical taxonomy (对于位置)。这是可行的,但由于管理面板中分类法UI的限制,它不允许我添加静态内容/图像等(我更喜欢使用WYSIWYG,尤其是从客户端的角度)。

    所以这让我想知道它是否值得制作two custom post types 并将分类法全部废弃,使其中一个岗位类型成为resorts和其他位置。有了位置帖子类型,我可以像页面模块一样设置它(这将给我分级控制,让我可以按照我最初的计划组织我的位置),但这是明智之举吗?我的意思是,从我读到的内容来看,你不应该这样组织内容,但我有一种感觉,可能只是上下文语义的冲突(我可能错了!)。如果我希望在将来添加搜索功能,那么这样设置对我来说有什么限制吗?或者其他什么事情?

    我想在我最后点击提交按钮(为文字长城道歉)之前我会提到这一点,但是pages... 我已经read here 它们是Wordpress中强大的小宝石,如果我使用自定义分类法,我应该如何利用它们?它们与列表类别的配合情况如何?它们是我所需要的吗?

    好了,这就结束了我现在要问的所有事情——也许我应该把这篇文章分成几个帖子,但是嘿!我希望这能给你们提供足够的信息,让你们了解我正在努力实现的目标,如果我做错了,请随时为我指出正确的方向。我非常渴望了解更多有关Wordpress及其功能的信息。

    问候Danny

2 个回复
SO网友:Chip Bennett

因此,在一天结束时,您的内容是关于度假村的(即“目的地”=resort?

如果是:

自定义帖子类型:destination (从语义上讲,它应该是“resort”,但您可以使用“destination”来满足客户的需求)自定义分类法:location (country, city, 等等)

编辑:

如何解析术语:

Post:名词分类法:形容词

帖子是东西,是内容。任何分类法都是描述你的帖子的方法。

SO网友:Rohjay

我想我会为此制作或调整一个页面模板。

以下是我的想法:

1 - 他们拥有并使用他们的博客,针对每个不同的国家,等等,没有特定的顺序。使用类别为每个帖子分别放置国家和城市。

例如标题:土耳其,贝莱克-2009年夏季惨败!(或者他们想把它命名为什么)帖子:这是一个有图片、文字和wowee的条目<类别:土耳其、贝莱克、海滩、度假村。。。等

2 - 在页面模板中,您可以添加导航,以便在不通过$\\u GET[\'Country\']和/或$\\u GET[\'City]]提供信息的情况下,显示选项。这里的诀窍是,当他们选择特定的东西(如土耳其、贝莱克)时,你可以像这样过滤类别:

query_posts("showposts=15&offset=0&cat=3,11");
假设Turkey是类别id“3”,Belek是“11”。。。您可以只使用query\\u posts(“cat=3,11”),但这应该可以让您开始。

希望有帮助!

结束