是否可以通过编程方式创建页面?我想这样做,我可以在一个主题中创建一个模板文件,并能够指向该页面的链接,而不必依赖用户使用tempalte手动创建页面。
这可能吗?
更新:到目前为止的解决方案这是我到目前为止想到的:
add_action( \'init\', \'add_virtual_page_template\' );
function add_virtual_page_template()
{
global $wp, $wp_rewrite;
$wp->add_query_var( \'template\' );
add_rewrite_endpoint( \'fish\', EP_ROOT );
$wp_rewrite->add_rule( \'fish/?\', \'index.php?template=fish\', \'top\' );
$wp_rewrite->flush_rules();
}
add_action( \'template_redirect\', \'add_virtual_page_redirect\' );
function add_virtual_page_redirect()
{
global $wp;
$template = $wp->query_vars;
if ( array_key_exists( \'template\', $template ) && $template[\'template\'] == \'fish\' )
{
global $wp_query;
$wp_query->set( \'is_404\', false );
include( get_stylesheet_directory() . \'/page-fish.php\' );
exit;
}
这两个都在函数中。我的主题的php文件。
这段代码成功地服务于page fish的内容。php,就像我创建了一个页面并将其设置为模板一样。
到目前为止出现的一件事是:使用此方法的站点的URL是
www.url。com/登录/
但是,如果我创建一个页面并手动设置模板,URL如下所示:
www.url。com/登录
这相对较小,但是否有办法解决此问题?
使用我在这里使用的总体方法是否会遇到其他问题?