繁体   English   中英

如果 ACF 值与页面的 URL 匹配,则重定向 URL

[英]Redirect URL if value ACF matches URL slug of page

我可以在我试图实现的目标上使用一些帮助。 我们有一个带有空缺的 WordPress 自定义帖子类型,所有这些空缺都有一个唯一的 ID,例如“P563328-18”。 单个空缺的URL是这样的:

https://example.com/vacancies/vacanci-title-p563328-18/

空缺 ID 存储在 ACF(自定义字段)“vacancie_id”中,我得到这样的代码来获取所有空缺 ID:

<?php
$posts = get_posts(array(
    'numberposts' => -1,
    'post_type' => 'vacancies',
    'meta_key' => 'vacancie_id'
));

if($posts)
{
    foreach($posts as $post)
    {
        echo the_field('vacancie_id');
    }
}
?>

我知道这对于我想要实现的目标是没有用的,但是你有一个想法。

当有人尝试访问此 URL: https://example.com/redirect/P563328-18时,我想创建一个自动 301 重定向

服务器正在将此 URL 重定向到具有该唯一 ID 的空缺,例如: https://example.com/vacancies/vacancie-title-p563328-18/

这样的事情是否可能,有人可以指出我如何实现这一目标的正确方向吗?

谢谢!

编辑

汤姆的回答让我想到了第一个需要重定向的 URL 是 404。

所以基本上我想要实现的是,当 404 有这样的 url 时: https://example.com/redirect/P563328-18

将其重定向到具有与 P563328-18 匹配的 slug 的空缺职位。 https://example.com/vacancies/vacanci-title-p563328-18/

您的第一个 URL 有效还是生成 404?

我真的不是插件的粉丝,但是这个插件在我的一些页面上效果很好,可以服务于这个原因:

https://wordpress.org/plugins/wp-404-auto-redirect-to-similar-post/

试一试,它会找到一个类似的帖子并自动生成一个 301 重定向到该帖子。

如果您的第一个 url 没有生成 404,那么您可以使用 /redirect/ 目录中的 a.htacess 文件拒绝访问,例如:

Deny from all
ErrorDocument 404 "/errors/404.html"

问候汤姆

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM