如果你想保持目前的结构,我会使用routing library.
使用此库,您可以像这样解决您的问题:
Routes::map(\':job_slug/apply\', function($url_params) {
$params = [];
$wp_query_args = [
\'post_type\' => \'page\',
\'posts_per_page\' => 1,
\'post_name__in\' => [\'apply\']
];
Routes::load(\'page.php\', $params, $wp_query_args);
});
使用
$url_params[\'job_slug\']
您可以访问当前作业slug,通过它可以查询更多信息,然后通过load方法的第二个参数将这些信息传递给模板。
第一个参数只是告诉它使用页面。php模板和第三个参数告诉WordPress wich query在到达此路径时执行。在这种情况下,它只需加载作业应用页面。