Problém s přesměrováním na jinou stránku

Potřebujeme-li v šabloně/pluginu/funkci přesměrovat výstup na jinou stránku, pomocí funkce wp_redirect nebo přímo přes header(‚Location: http://www.example.com/‘) může nastat problém, signalizovaný hláškou Cannot modify header information – headers already sent by.

Lze to vyřešit několika způsoby:

1) v php funkcí ob_start zde vysvětlení


// hned na začátek za úvodní <?php umistime
<?php
ob_start();
...
// a úplně na konec, pred závěrečný ?> umístíme
ob_end_flush();
?>

2) javascriptem přes window.location


<?php
function JsRedirection($url) {
?>
<script type="text/javascript">
<!–-
window.location = "<?=$url?>"
//-–>
</script>
<?php }
JsRedirection("http://www.example.com/");
?>

3) pomocí meta-refresh


<?php echo "<meta http-equiv='refresh' content='0;url=$location' />"; ?>