在用户单击按钮时,这里是否可以调用wordpress模板部分?
实际上,我想在wordpress woocommerce产品页面上放置一个名为“详细信息”的按钮。当用户单击它时,他们将在自定义模板部分中重定向。
答案 0 :(得分:1)
您可以通过重写端点通过单独的页面加载来处理此问题。这将为每次单击按钮向服务器发送一个请求,并且您必须自行设置链接的格式才能将端点附加到永久链接,不确定是否满足您的要求。
首先注册页面发布类型的端点:
function wpa_view_endpoint(){
add_rewrite_endpoint( 'view', EP_PAGES );
}
add_action( 'init', 'wpa_view_endpoint' );
现在,对于每个页面,例如:
http://example.com/some-page/
您也可以使用以下网址:
http://example.com/some-page/view/list/
视图的值将通过get_query_var
在模板中提供:
$view = get_query_var( 'view' );
然后,您可以根据该值显示任何标记。
您还可以通过以下方式过滤页面模板的加载并为每个视图加载单独的模板:
`function wpa_view_template( $template = '' ){
global $wp_query;
if( isset( $wp_query->query_vars['view'] ) ) {
$template = locate_template( $wp_query->query_vars['view'] . '.php', false );
}
return $template;
}
add_filter( 'page_template', 'wpa_view_template' );`
因此,示例:
`http://example.com/some-page/view/list/`
此过滤器将加载模板list.php而不是默认页面模板。