如何在wordpress中使用wp_rewrite?

时间:2013-10-21 08:47:16

标签: php wordpress

我在使用wp_rewrite时遇到问题..似乎无法使其正常工作.. 我需要更改此网址:

/eduedu/wp-content/plugins/workwork/admin/templates/tcpdf/samp/flash.php

/eduedu/generator

function create_rewrite_rules() {

  add_rewrite_rule($wordpress_root.'/generator/?$', 'wp-content/plugins/workwork/admin/templates/tcpdf/samp/flash.php');
}

function flush_the_rewrite_rules () {
  flush_rewrite_rules;
}

add_action('init', 'flush_the_rewrite_rules');
add_filter('generate_rewrite_rules', 'create_rewrite_rules');

2 个答案:

答案 0 :(得分:0)

尝试:

function flush_the_rewrite_rules () {
  flush_rewrite_rules();
}

另外,你确定$ wordpress_root正在初始化,你可能想调试它的值,看看它是否是你所期望的。

答案 1 :(得分:0)

将此代码添加到functions.php文件

function site_router() {

global $url_array;
    $url_array = explode("/",$_SERVER['REQUEST_URI']);
    $route = $url_array[2];
    $template_dir = 'wp-content/plugins/workwork/admin/templates/tcpdf';
    switch($route) {
    case 'generator':
        load_template($template_dir.'/samp/flash.php');
        die();
        break;
    }
}

add_action( 'send_headers', 'site_router');

它会找到url domain.com/edenudu/generator并从您想要的文件中加载模板。

无需在htaccess中搞乱,也不需要创建重写规则,这些规则主要用于为现有帖子/页面创建漂亮的永久链接