0

我已经创建了一个 redir.php 并放置在 wordpress 的主目录中以进行重定向。我想传入帖子 ID,然后检索帖子的自定义字段值并输入 header('location:'.$url);

redir.php 中的 www.mysite.com/redir.php?id=30 将检索 post id=30 自定义字段值并将其传递给 $url。

这就是我所拥有的,但它不起作用。它给了我“解析错误:第 5 行 \redir.php 中的解析错误”。

看起来 wordpress 环境没有被加载。

 <?php

    require('./wp-blog-header.php');
      $id = $_GET['id'];
  $url= get_field('deal_http_link',post->$id);
    header('Location:'.$url);
?>

谢谢

4

1 回答 1

1

您的脚本有多个问题:

  • 开始标记之前有空格<?php,因此重定向不起作用,因为标头已经发送。相反,<?php应该是文件中的第一件事。
  • post->$id是无效的语法。您可能指的是$id您在前一行中定义的变量。
  • 要检索自定义字段的值,请使用get_post_meta(),而不是 get_field()。

尝试这样的事情:

<?php
require('./wp-blog-header.php');
$id = $_GET['id'];
$url = get_post_meta($id, 'deal_http_link', true);
header('Location: ' . $url);
exit();
于 2012-08-18T14:06:41.407 回答