Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将/#/添加到WordPress永久链接_Wordpress_Url_Permalinks - Fatal编程技术网

将/#/添加到WordPress永久链接

将/#/添加到WordPress永久链接,wordpress,url,permalinks,Wordpress,Url,Permalinks,我想自定义wordpress永久链接的结构,稍微超出默认设置。我想在/%postname%/之前添加#/,以便代替当前的永久链接: 我明白了: 编辑:以下是不起作用的内容:页面的实际永久链接是http://www. mybusinesssite.com/about/thecompany——但当我将该页面加载到主索引页面时,url显示更改为http://www. mybusinesssite.com/#/about/thecompany。页面显示得很好,但无法正确地添加书签,因为访问http:

我想自定义wordpress永久链接的结构,稍微超出默认设置。我想在/%postname%/之前添加#/,以便代替当前的永久链接:

我明白了:

编辑:以下是不起作用的内容:页面的实际永久链接是
http://www. mybusinesssite.com/about/thecompany
——但当我将该页面加载到主索引页面时,url显示更改为
http://www. mybusinesssite.com/#/about/thecompany
。页面显示得很好,但无法正确地添加书签,因为访问
http://www. mybusinesssite.com/#/about/thecompany
通过书签引导用户进入页面的初始状态,而不是从/about/thecompany加载内容的页面。我想做的是将实际页面永久对齐为
#/about/thecompany
。然后,我将使用JavaScript将该url拆分为段,删除初始的
#/
段,并在JavaScript哈希之后添加所有其他内容。因此,我将在url中包含
#/about/thecompany
,这将是该页面的实际url

如何做到这一点?

正如正确解释的那样,您不能通过PHP读取哈希之外的任何内容,因为它根本不会传输到服务器

您可以在第一个页面上使用一个脚本,通过ajax获取子页面,但这将给搜索引擎和通用性带来混乱

jQuery(document).ready(function($) {
    if(window.location.hash) {
        // Fragment exists, redirect to url without #
        window.location = window.location.replace("#","");
    }
});
正如正确解释的那样,您不能通过PHP读取哈希之外的任何内容,因为它根本不会传输到服务器

您可以在第一个页面上使用一个脚本,通过ajax获取子页面,但这将给搜索引擎和通用性带来混乱

jQuery(document).ready(function($) {
    if(window.location.hash) {
        // Fragment exists, redirect to url without #
        window.location = window.location.replace("#","");
    }
});

如上所述:
#
之后的URL部分不会传递给服务器-如中所述,只有用户浏览器知道它。如果用户书签:一个带有哈希字符的链接-当访问该链接时,将离开用户设备的唯一部分是
http://www.example.com/
-因此,即使您按照自己的意愿完成了wordpress URL的自定义,它也不会起作用(它可以用于任何其他字符,但对于
#


要解决您的问题,您需要在门户根目录上使用javascript解决方案——它甚至可以变成一个简单的解决方案。(读取原始URL,其中javascript位于客户端,包括通过
的字符,并从服务器加载它,删除

如上面的注释所述:
之后的URL部分不会传递给服务器,因为只有用户浏览器知道它。如果用户书签:一个带有哈希字符的链接-当访问该链接时,将离开用户设备的唯一部分是
http://www.example.com/
-因此,即使您按照自己的意愿完成了wordpress URL的自定义,它也不会起作用(它可以用于任何其他字符,但对于
#



要解决您的问题,您需要在门户根目录上使用javascript解决方案——它甚至可以变成一个简单的解决方案。(读取原始URL,其中javascript位于客户端,包括通过
的字符,并从服务器加载它,删除

我认为使用htaccess重写可能是一个更简单的解决方案?请您详细说明,@lawnlanders?没有javascript,这毫无意义。URL的哈希部分用于在不刷新页面的情况下动态加载内容。这不是可以用PHPMm模拟的东西,那可能是系统中的一个bug?通常,如果JavaScript在
#
之后遇到URL,它应该加载正确的页面。我认为使用htaccess重写可能是一个更简单的解决方案?请您详细说明一下,@lawnlanders?没有JavaScript,这毫无意义。URL的哈希部分用于在不刷新页面的情况下动态加载内容。这不是可以用PHPMm模拟的东西,那可能是系统中的一个bug?通常,如果JavaScript在
之后遇到URL,则应加载正确的页面。了解如何使用PHP添加URL。还有其他的方法吗?你能解释一下为什么散列会对搜索引擎和通用性造成混乱吗?服务器端对此你无能为力。你必须使用JavaScript。我猜您是在使用AJAX获取子页面?然后只需对hashtag进行一次onload检查。这是不好的,因为搜索引擎不解析javascript,因为页面无法正确缓存,每个请求都被延迟,第一个请求被复制。请您详细说明这一部分,@MarZab:“对标签进行加载检查”-这是如何完成的,它实现了什么?请参阅编辑。当用户使用url mybusinesssite.com/#/about/thecompany登录到第一个页面时,此代码将捕获任何超过#的内容,您可以使用我看到的内容,但是
{}
了解如何使用PHP添加它。还有其他的方法吗?你能解释一下为什么散列会对搜索引擎和通用性造成混乱吗?服务器端对此你无能为力。你必须使用JavaScript。我猜您是在使用AJAX获取子页面?然后只需对hashtag进行一次onload检查。这是不好的,因为搜索引擎不解析javascript,因为页面无法正确缓存,每个请求都被延迟,第一个请求被复制。请您详细说明这一部分,@MarZab:“对标签进行加载检查”-这是如何完成的,它实现了什么?请参阅编辑。当用户登陆第一个页面时,url为mybusinesssite.com/#/about/thecompany,此代码将捕获任何超出#的内容,您可以使用我看到的内容,但是
{}
中应该包含哪些内容?