AJAX请求和普通请求之间的不同权限

时间:2015-12-12 作者:Jeg Bagus

我创建了新的帖子类型,可以从后端ex更改slug:

register_post_type( \'job\', array(
    \'rewrite\' => array(
        \'slug\' => $slug
    );
));
$slug 是我从后端获取的变量。如果我做正常的要求,它可以正常工作。我使用get_permalink 作用

但是,在执行ajax请求时出现了问题。我深入研究了代码,得到了普通请求和ajax请求返回的permastruck的不同结果。

在正常请求下,其返回permastruck的权限结果,例如:

[job] => Array
    (
        [with_front] => 1
        [ep_mask] => 1
        [paged] => 1
        [feed] => 
        [forcomments] => 
        [walk_dirs] => 1
        [endpoints] => 1
        [struct] => /lowongan-kerja/%job%
    )
URL结果如下所示:http://localhost/lowongan-kerja/programmer/

但在ajax上,它返回了不同的permastruck:

[job] => Array
    (
        [with_front] => 1
        [ep_mask] => 1
        [paged] => 1
        [feed] => 
        [forcomments] => 
        [walk_dirs] => 1
        [endpoints] => 1
        [struct] => /job/%job%
    )
非常奇怪,URL如下所示:http://localhost/job/programmer/

如何在正常和;ajax请求是否具有相同的URL?

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

因此,我研究了几个插件,以了解它是如何工作的,并通过使用add\\u permastruct找到解决方案

add_permastruct( \'job\', \'/\' . $slug . \'/%job%\', array(
            \'with_front\'  => false,
            \'ep_mask\'     => EP_NONE,
            \'paged\'       => false,
            \'feed\'        => false,
            \'forcomments\' => false,
            \'walk_dirs\'   => true,
            \'endpoints\'   => false,
        ));
问题解决了:)

相关推荐

Permalinks - Archives

WordPress文档说:WordPress offers you the ability to create a custom URL structure for your permalinks and archives. https://codex.wordpress.org/Settings_Permalinks_Screen 我看到此屏幕将如何为特定帖子/页面创建永久链接,但我没有看到此设置屏幕上关于如何为存档帖子/页面创建链接的任何其他详细信息。有人能澄清一下吗?