自定义URL结构-自定义帖子类型下的页面

时间:2012-11-12 作者:Joe Czucha

我正在努力解决Wordpress网站的结构问题,我希望你能给我一些建议。

该网站用于举办一系列活动,其结构如下:

2012年伦敦奥运会网关(包含一系列活动)概述(活动的默认设置)发言人议程地点登记/ul>我正在使用几种自定义帖子类型,并且每个都附加了多个自定义字段:

事件:来自此自定义帖子类型的信息用于创建概览页面演讲者:这是一个潜在演讲者池。使用上述自定义post-TypeVincement将演讲者添加到特定活动中:这是一个潜在场馆池。使用上述自定义帖子类型将场馆添加到特定活动中

我希望该网站的结构如下:

网关(Gateway)2012伦敦(london-2012)特定活动概述(speakers-speakers page)2012伦敦(speakers-speakers page)2012议程(agenda-agenda page)2012纽约(speakers-Other speakers page)等,其中相同的页面“类型”(如speakers page)将使用相同的模板(我将从URL获取父事件,并进行自定义查询以获取页面的数据)。

有人能建议最好的方法吗?我相信URL重写解决方案或类别都可能奏效,但我不确定这两种方法:(

Update 1

已使用重定向对此进行排序-例如,扬声器页面:

add_rewrite_rule(
  \'^event/([A-Za-z0-9-]+)/speakers/?$\', //Checked against the global $wp object - $wp->request
  \'index.php?page_id=9&event_slug=$matches[1]\', //Use WP_Query params to find your page
  \'top\' //This will superceed the default WP rewrite stack
);
然后注册变量:

add_filter(\'query_vars\', \'my_query_vars\');

function my_query_vars($vars){
    $vars[] = \'event_slug\';
    return $vars;
}

1 个回复
SO网友:developdaly

example.com/event/london-2012/speakers/john-doe
您需要一个“事件”帖子类型和一个“演讲者帖子类型”。事件帖子类型应具有层次结构,并且应有一个名为“演讲者”的子页面,该子页面应使用一个自定义模板,该模板显示分配给该事件的所有“演讲者”帖子类型(请参阅Posts 2 Posts插件)。

然后您可以创建其他子页面,如议程、注册等。

结束

相关推荐

problems exluding categories

我以前做过,但由于某种原因,它不起作用,我也不知道为什么。我只是想从博客页面中排除一些类别。我以为这件事很简单。我有索引。php文件打开,在循环之前,我这样做了 query_posts( $guery_string . \'&cat=-6\' ) if (have_posts)......rest of loop here. 我甚至尝试添加全局$query\\u字符串;最重要的是,我所做的一切都不能摆脱第6类。这种方法在最新版本的wordpress中是否不再有效?