WordPress的.htAccess ReWriteBase等效项-将URL作为变量传递,而不会获得404

时间:2014-06-27 作者:invot

我有一个javascript插件运行的页面,每次循环库中的幻灯片时,该插件都会更改url。

这意味着幻灯片1可见时,URL为http://www.sitename.com/gallery/slide1/ 幻灯片2可见时,URL为http://www.sitename.com/gallery/slide2/ ... 等等

在WordPress之外,我在中使用了RewriteBase命令。htaccess文件,以便当用户转到http://www.sitename.com/gallery/slide2/ 他们被引导到幻灯片2可见的页面。

然而,我无法在WordPress中实现这一点。有没有一种方法可以在不使用以下格式的情况下将此信息作为变量传递http://www.sitename.com/gallery?slide=slide2

我当前使用的脚本是:

// change url - unless IE8 because IE8 hates life
if ($.browser.msie && $.browser.version < 9) {} else {
    $histimg = img.name.toLowerCase();
    var stateObj = { foo: "bar" };
    history.replaceState(stateObj, "", pathname + imageprefix + $histimg + "/");
}
然后,当一个链接被接受时,我运行此命令以找出要显示的计划:

patharr = location.pathname.split("/").reverse(); //Get the URL of the page

result = patharr[1]; // Get the Slide Number

$(\'#xmenu button[data-index="\' + result + \'"]\').trigger("click");

}   
注意:我不希望通过插件或直接在WordPress安装中破解文件来实现这一点。这是主题的一部分,需要包含在主题中。

1 个回复
最合适的回答,由SO网友:Milo 整理而成

它不会给出确切的格式,但可以添加一个名为slide 并获取格式http://www.sitename.com/gallery/slide/2/:

function wpd_add_slide_endpoint(){
    add_rewrite_endpoint( \'slide\', EP_PAGES );
}
add_action( \'init\', \'wpd_add_slide_endpoint\' );
那你就可以localize your script 要传递幻灯片编号,请使用get_query_var(\'slide\') 获取当前值。

结束

相关推荐

Custom gallery in wp3.5

我使用了我在3.4中为一个光滑的小自定义库找到的教程,但升级到3.5后,它就不再工作了。我仍在努力学习php,但似乎无法再次使用它,因为我要么出错,要么什么都没有。无论如何,在升级之前,用户所要做的就是点击“添加媒体”,上传他想在帖子中显示的任何图像[在本例中是产品],设置图像的顺序,第一个图像是顶部/全尺寸图像,然后在文本字段中键入他的描述,当他点击“提交”时,将以上所有内容以良好的格式显示出来,如下所示:single.php xxxxxxxxxxxxxxxxxxxxxxxxxxxxx