ユーザがログインしているかどうかを確認し、結果に応じてユーザをカスタムフィールドAまたはBにリダイレクトする必要があります。これは今までのコードです:PHP Wordpress単純なカスタムフィールドのリダイレクト
<?php
global $current_user;
get_currentuserinfo();
require_once($_SERVER['DOCUMENT_ROOT'] . '/wp-config.php');
add_action('get_header', 'redirect');
function redirect() {
global $post;
if (is_page() || is_object($post)) {
if (get_post_meta($post->ID, 'redirect', true)) {
header('Location: ' . get_post_meta($post->ID, 'redirect', true));
}
}
}
function redirect_b() {
global $post;
if (is_page() || is_object($post)) {
if (get_post_meta($post->ID, 'Shortlink', true)) {
header('Location: ' . get_post_meta($post->ID, 'Shortlink', true));
}
}
}
if ($current_user->ID == '') {
redirect();
}
else {
redirect_b();
}
?>
これは動作しません。これを有効にするたびにエラー500が発生します。誰でも助けてくれますか?どうもありがとう!
'header'の直後に' exit; 'を追加し、リダイレクトを呼び出す前に何も描画しません。 – Rikkles
下の回答は良いですが、参考のためにこのコードは決して真とは評価されません。現在のユーザーがログインしていない場合、現在のユーザーIDは0 if($ current_user-> ID == ') – miknik