programing

'wp_module'이 작동하지 않습니다.

minimums 2023. 3. 9. 21:55
반응형

'wp_module'이 작동하지 않습니다.

HTML 양식 입력이 있습니다.코드는 다음과 같습니다.

<?php if(isset($_POST['login'])) { 
    wp_redirect("/"); 
}

<form accept-charset="UTF-8" method="post" >
    ...
    <center><input name="login" type="submit" value="вход" />
</form>

하지만 리다이렉트가 작동하지 않습니다.debug plugin을 설치합니다.wp로 리다이렉트 됩니다.

http://i.stack.imgur.com/Im4eE.png

PS:

<?php wp_redirect( 'http://www.example.com', 301 ); exit; ?>

그것도 안 돼요.

다음 코드를 사용합니다.-

function app_output_buffer() {
    ob_start();
} // soi_output_buffer
add_action('init', 'app_output_buffer');

또는 ob_start()를 'init'에 후크하는 함수의 첫 번째 행으로 추가합니다.

추가되는 것을 잊지 마세요.

exit();

에 전화하신 직후에

wp_redirect($url);

링크:

https://tommcfarlin.com/wp_redirect-headers-already-sent/

내 생각에 네 코드는 그렇게 시작하지 않아if조건!

wp_redirect헤더가 송신되기 때문에, 그 전에 인쇄/삭제하면, 에러가 발생합니다.

그 전에 다음 사항을 확인합니다.

if(isset($_POST['login'])) 
{
    wp_redirect("/");
    exit;
}

캐릭터 출력은 없습니다.또, 넣는 것도 잊지 말아 주세요.exit;직후에wp_redirect.

다음과 같이 사용하십시오.

ob_clean();
$url = get_home_url() . '/login';
wp_redirect($url);
exit();

아니면 리다이렉트 목적으로 Javascript를 사용할 수도 있습니다.

<script>window.location='http://www.google.com'</script>

다음을 시도합니다. 그러면 오류 보고도 강제로 실행됩니다.

error_reporting(E_ALL | E_WARNING | E_NOTICE);
ini_set('display_errors', TRUE);


flush();
header("Location: http://www.website.com/");
die('should have redirected by now');

PHP 헤더 리다이렉트가 작동하지 않음

편집:

그 때문에, 당신에게는headers already sentwarning 코드 맨 에 다음을 추가해 보십시오.

ob_start();

장기적으로는 PHP 스크립트의 모든 출력을 변수에 버퍼링해야 합니다.여기에는 헤더와 본문 출력이 포함됩니다.그런 다음 스크립트의 마지막에 필요한 출력을 수행합니다.

문제의 가장 빠른 해결책은 ob_start()를 스크립트에 추가하는 것입니다.이 스크립트에 ob_start()가 필요한 경우입니다.모든 스크립트에 필요한 경우 헤더에 첫 번째 항목으로 추가합니다.php 파일.

그러면 PHP의 출력 버퍼 기능이 활성화됩니다.PHP 에서는, 그 시점에서 HTTP 헤더를 송신할 필요가 있는 경우(에코 또는 인쇄를 실행한다).출력 버퍼링을 켜면 스크립트로 출력할 수 있지만, PHP는 버퍼가 플러시될 때까지 헤더를 전송할 필요가 없습니다.이 기능을 켜고 끄지 않으면 스크립트 실행이 완료된 후 PHP가 버퍼에 있는 모든 항목을 자동으로 플러시합니다.대부분의 경우 전원을 켜는 것만으로 나쁠 것은 없으며 구성에 따라서는 약간의 성능 향상을 기대할 수 있습니다.

경고에서: 헤더 정보를 수정할 수 없습니다. 헤더가 이미 전송되었습니다.

저는 같은 문제에 직면했지만, 이 해결책들 중 어느 것도 제게는 효과가 없었습니다.

이 페이지에서 유일하게 달라진 점이 있다면wp_redirect래래 get_header()네, 네, 네, 네.

것을 get_header();또는 템플릿에 머리글이나 바닥글과 같은 내용을 만들 수 있는 워드프레스 기능을 사용할 수도 있습니다.그렇지 않으면 리디렉션이 작동하지 않습니다.

는 이 .ob_start();, 만약 , 당신이 하더라도.ob_start();다이이 이키 기키 이키 기키 이키 이키 이키 이키 이키 이키

다음 코드를 사용해 보십시오.

wp_redirect(get_permalink($post->ID));
exit;

언급URL : https://stackoverflow.com/questions/19587154/wp-redirect-is-not-working

반응형