0

我创建了一个 wordpress 插件,它使用简码和 URL 参数来加载特定文本。

默认页面是:

   domainname.com/test

   [shortcode for plugin]

... default template ...

它可以使用以下参数加载一些文本:

domainname.com/test?book_id=BWBR0002656&art_id=1

       [shortcode for plugin]

... loaded the text for the book_id and art_id ...

我想将 javascript 参数 url 从当前domainname.com/test?book_id=BWBR0002656&art_id=1更改为domainname.com/test/BWBR0002656/1而不会触发 wordpress 404 重定向。

这可能与短代码页面仍在运行有关吗?

4

1 回答 1

2

我设法让它使用这个:

add_action( 'init', 'wpa5413_init' );
function wpa5413_init()
{
    // Remember to flush the rules once manually after you added this code!
    add_rewrite_rule(
        // The regex to match the incoming URL
        'test/([^/]+)',
        // The resulting internal URL: `index.php` because we still use WordPress
        // `pagename` because we use this WordPress page

        'index.php?pagename=test',
        // This is a rather specific URL, so we add it to the top of the list
        // Otherwise, the "catch-all" rules at the bottom (for pages and attachments) will "win"
        'top' );
}

它将使用 args 加载 /test/ 页面,而 javascript 将处理其余部分。

/test/ 之后的所有内容都被接受,没有 404 错误。偶数:/test/a/b/c/d/e

于 2018-04-05T18:31:31.183 回答