当用户单击按钮时,这里有什么办法调用WordPress模板部分?
实际上,我想在WordPress WooCommerce产品页面中放置一个名为"详细信息"的按钮。当用户单击它时,他们将在自定义模板部分中重定向。
您可以通过重写端点单独的页面加载来处理此操作。这将在每个按钮点击中将请求发送到服务器,您必须自己格式化链接以将端点附加到永久链接,不确定是否符合您的要求。
首先注册页面帖子的端点类型:
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而不是默认页面模板。