Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/wordpress/13.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 post';s特定页面的永久链接_Wordpress - Fatal编程技术网

设置wordpress post';s特定页面的永久链接

设置wordpress post';s特定页面的永久链接,wordpress,Wordpress,当我添加/编辑文章时,我可以更改永久链接的slug。但我不能添加斜线。 所以假设我有 http://domain.com/myslug 但我需要 当我保存它的时候 http://domain.com/myslug1myslug2 如何克服这个问题?当你访问一个页面时,比如说domain.com/careers,WordPress必须找出要从数据库中检索的帖子 它将查看所有重写规则,并尝试找到与请求匹配的规则。在这种情况下,最后一条规则将捕获它: [(.?.+?)(/[0-9]+)?/?$]

当我添加/编辑文章时,我可以更改永久链接的slug。但我不能添加斜线。 所以假设我有

http://domain.com/myslug
但我需要

当我保存它的时候

http://domain.com/myslug1myslug2

如何克服这个问题?

当你访问一个页面时,比如说
domain.com/careers
,WordPress必须找出要从数据库中检索的帖子

它将查看所有重写规则,并尝试找到与请求匹配的规则。在这种情况下,最后一条规则将捕获它:

[(.?.+?)(/[0-9]+)?/?$] => index.php?pagename=$matches[1]&page=$matches[2]
它将把
职业
$matches[1]
)作为
页面名
值传入,对其进行相应的剖析,然后在数据库中查找名为
职业
的帖子

当您访问名为
domain.com/careers/internations
的页面时,最后一条规则将再次适用。这一次,它将传入
职业/实习
,对其进行相应的剖析,将帖子的父项设置为
职业
,然后在数据库中查找与父项匹配的名为
实习
的帖子

如果WordPress允许您将slug设置为
myslug1/myslug2
,WordPress做出的一些假设将是错误的

  • 没有名为
    myslug1
  • 没有名为
    myslug2
  • 没有让WordPress知道如何处理
    myslug1/myslug2
    slug的重写规则
  • 尽管如此,你仍然有可能实现你想要的,但也许不是在弥补鼻涕虫的方式上,你将一无所获。必须有一种模式,某种规则,你可以给WordPress写上“如果x,那么y”

    例如,您可以有一个带有输入字段的元框,每当您在其中输入内容时,该段塞就会出现在URL的末尾。或者您可以在
    domain.com
    myslug2
    之间夹一个自定义slug

    以下是一些需要研究的问题:

  • 函数-允许您指定其他重写规则
  • 函数-使WordPress知道自定义查询字符串变量
  • 过滤器-允许在执行查询之前操作查询变量
  • 操作-在WordPress确定加载哪个模板页面之前执行
  • 另一种方法可能是使用
    myslug1
    创建父页面,然后使用
    myslug2
    创建子页面。或者,根据您的需要,您也可以查看。您可以有一个名为
    myslug1
    的自定义帖子类型,然后在其中发布,其中一篇帖子将是
    myslug2


    如果您对实现上述其中一项有具体问题,请查看堆栈溢出,或者在找不到答案的情况下发布另一个带有详细信息的问题。

    确实存在url myslug1/myslug2,因此我可以手动打开它,但我想设置引用myslug1/myslug2的permalink,请参见,在浏览器的url栏中键入link,然后按go或enter:)输入链接并不意味着它存在。看看我的答案,让WordPress确认你的URL。