訪問者がサイトからのリンクをたどってこのページにアクセスした場合は、追加のデータを送信して、JavaScriptが有効になっていることをサーバースクリプトに知らせることができます。例えば
$('a').each(function() {
var url = this.href;
if (url.indexOf("?") !== -1)
this.href = url + '&js=1';
else
this.href = url + '?js=1';
});
これにより、すべてのリンクが変更され、JavaScriptが有効かどうかを示す特別なパラメーターが含まれるようになります。実行したい追加のJavaScriptコードもここに配置できる場合は、さらに良いでしょう。
サーバースクリプトは if (!empty($_GET['js'])) { ... }
、JavaScriptの一部(古い回答2)を作成するか、すぐにリダイレクトを実行するようなものを使用します。
古い答え
Refresh
JavaScriptが無効になっている場合に備えて、ヘッダーを送信できます。
<?php
header('Refresh: 2; url=http://www.example.org');
?>
<html>
<head>
//script here
</head>
<body>
</body>
</html>
私はこれを試していなかったことを認めなければなりませんが、うまくいく可能性は十分にあります
古い答え2
ただし、JavaScriptが有効になっていることが確実な場合は、JavaScriptが完了した後にリダイレクトを実行させることができます。URLが常に同じである場合は、PHPコードを省略し、静的な文字列を使用します。
<html>
<head>
<script>
//script here
location = <?php echo json_encode('http://www.example.org'); ?>;
</script>
</head>
<body>
</body>
</html>