嗨,我
正在创建一个网站,我正在尝试创建一个页面,其中的数据来自不同的数据库,与WordPress Database
无关。
我创建了一个循环,它像WordPress
一样显示许多帖子,但它不是来自WordPress
帖子类型等,只是用简单的mysqli_query
做。 现在对于该循环,我想创建一个单页显示,我可以像WordPress
帖子一样显示完整的详细信息。
我创建此虚拟网址的示例:-http://example-website.com/handbuch-der-mechanischen-verfahrenstechnik/B009CCTW9M
现在" B009CCTW9M
"是我将创建mysqli_query
以显示单个帖子的id
。
但是当我到达该 URL 时WordPress
显示404 Error
因为它在WordPress Database
中不存在。
我认为它需要通过mod_rewrite
来完成,但我不是专家,请帮助我弄清楚。
对不起,伙计们不清楚的描述可能会对您有所帮助
我创建了一个mysqli_query
来显示一些数据,就像WordPress使用" while (have_posts()) : the_post();
但不同的是,我的数据不是来自WordPress数据库结构。 因此,对于我显示的数据,我需要创建一个页面。 因此,我可以像WordPress单页一样显示其全部详细信息。 为此,我必须创建一些URL,但我不确定如何创建它,因此WordPress不会404 Error
。 在该 URL 上,我希望这个 ID ' B009CCTW9M
' 以便我可以提取它并创建mysqli_query
.
嗨,
很抱歉回答晚了,这是我的解决方案,帮助我希望这对其他人有所帮助。
function userpage_rewrite_catch() {
global $wp_query;
if ( array_key_exists( 'ebooks_id', $wp_query->query_vars ) ) {
include WP_PLUGIN_DIR .'/'. plugin_basename( dirname(__FILE__) ) .'/single-ebook.php';
exit;
}
}
add_action( 'template_redirect', 'userpage_rewrite_catch' );
function userpage_rewrite() {
global $wp_rewrite;
$wp_rewrite->flush_rules();
}
add_action('init','userpage_rewrite');
function ebook_plugin_activate() {
products_plugin_rules();
flush_rewrite_rules();
}
function ebook_plugin_deactivate() {
flush_rewrite_rules();
}
function ebook_plugin_rules() {
//add_rewrite_rule('ebook/?([^/]*)', 'index.php?pagename=ebook&ebook_id=$matches[1]', 'top');
add_rewrite_rule( 'ebooks/([^/]+)/([^/]*)/([^/]*)', 'index.php?ebooks=$matches[1]&ebook_cat=$matches[2]&ebooks_id=$matches[3]', 'top' );
}
function ebook_plugin_query_vars($vars) {
$vars[] = 'ebooks';
$vars[] = 'ebook_cat';
$vars[] = 'ebooks_id';
return $vars;
}
//register activation function
register_activation_hook(__FILE__, 'ebook_plugin_activate');
//register deactivation function
register_deactivation_hook(__FILE__, 'ebook_plugin_deactivate');
//add rewrite rules in case another plugin flushes rules
add_action('init', 'ebook_plugin_rules');
//add plugin query vars (product_id) to wordpress
add_filter('query_vars', 'ebook_plugin_query_vars');