具有不同视图的自定义帖子类型

时间:2017-06-13 作者:Chris Callahan

我们正在Wordpress中重建我们的网站,并试图找出最佳解决方案,用独特的元数据显示同一产品的不同视图。

比如说Property 是职位类型。我们想显示几个不同的视图(completed (built), for sale, and for rent.)

每一个都会有稍微不同的文本和自定义字段,这些字段根据用户所看到的内容显示,有3种不同的URL模式:

示例。com/homes-built/房屋1示例。com/homes-for-sale/房屋1示例。com/homes-for-rent/住宅1Property 可以分为一个或多个不同的视图(例如出售和出租)

理想情况下,我们会有一个帖子类型,视图会根据您要查找的内容显示信息(而不是重复内容和任何翻译3次)。我知道这可以通过3种独立的自定义帖子类型来实现,但也可以通过一种来实现,同时为每个视图维护单独的元数据?

为了使事情复杂化,我们正在使用WPML进行翻译。这就是为什么首选一种职位类型的原因之一。像Yoast这样的插件还能为单独的视图应用独特的元数据吗?

2 个回复
SO网友:hwl

例如,假设属性是post类型。我们想展示几个不同的视图(已竣工、待售和出租)

当然只需完成、出售和出租即可taxonomies 用于属性的post类型。调查WP_Rewrite 类,并且您可以更好地控制url永久链接结构。

SO网友:Pisuke Soramame

一种可能的解决方案是在帖子中添加一个元数据字段,指示状态(即已完成、待售或待租)。然后在模板文件中调用get\\u post\\u meta并根据状态显示内容。这种方法的另一个好处是,您可以根据状态生成帖子列表。

要使用插件添加元数据,可以使用高级自定义字段将字段“状态”添加到帖子中。如果您想以编程方式执行此操作,我可以推荐excellent video tutorial by Bobby.

另一种解决方案,虽然不那么优雅,但可以使用post格式(在codex中搜索post格式)。在这种情况下,您不需要添加自定义元数据字段。请注意,wordpress不允许生成自定义的post格式,因此您必须将九种预定义状态中的三种映射到属性的三种可能状态。A好的video tutorial by Alessandro 显示如何处理post格式。通过采用这种方法,您需要在仪表板中手动设置帖子格式,以便呈现正确的模板(例如,aside=>completed,gallery=>for sale,link=>for rent)。

结束

相关推荐

Making post views as sortable

我正在wordpress管理帖子页面上使用自定义字段,添加以下代码,然后尝试根据帖子视图对帖子进行排序,但排序不起作用。下面是我在函数中添加的代码。php:add_filter(\'manage_posts_columns\', \'posts_column_views\'); add_action(\'manage_posts_custom_column\', \'posts_custom_column_views\',5,2); function posts_column_views(