首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在哪里声明wp_rewrite代码?wp_rewrite问题

在哪里声明wp_rewrite代码?wp_rewrite问题
EN

Stack Overflow用户
提问于 2013-10-22 14:37:45
回答 1查看 90关注 0票数 0

我有一个关于wp_rewrite的问题,它不能正确显示,

我需要将此url设置为eduedu/wp-content/plugins/workwork/admin/templates/tcpdf/samp/flash.php

eduedu/generator

当使用.htaccess时,它可以工作,问题是,当它放在插件文件夹中时不能工作,htaccess必须放在wordpress的根文件夹中。所以我想到了使用wp_rewrite

这是我的代码,我在页面上添加了这个,当它被重定向到eduedu/wp-content/plugins/workwork/admin/templates/tcpdf/samp/flash.php时,我不确定它是否正确,有什么想法吗?

代码语言:javascript
复制
add_action('generate_rewrite_rules', 'cs_rewrite_rules');   
add_filter('init', 'eduFlush');
function cs_rewrite_rules() { 
  global $wp_rewrite; 
  $new_non_wp_rules = array( 
    '^generator/?$'   => 'eduedu/wp-content/plugins/workwork/admin/templates/tcpdf/samp/flash.php', 
  ); 
  $wp_rewrite->non_wp_rules += $new_non_wp_rules; 
}  

function eduFlush(){
global $wp_rewrite;
  $wp_rewrite->flush_rules();
}
EN

回答 1

Stack Overflow用户

发布于 2013-10-22 18:18:29

也许下面这些内容会有所帮助:

代码语言:javascript
复制
function site_router() {

global $url_array;
    $url_array = explode("/",$_SERVER['REQUEST_URI']);
    $route = $url_array[1];
    $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/url_array1),然后获取您想要从中获取文件的位置。

交换机获取url,所以是domain.com/generator,然后从您调用的文件中加载模板。

如果wordpress在子文件夹(domain.com/wp_ url_array1 )中,你可能需要将根更改为2。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19510728

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档