1

カスタム コンテンツ管理システムで Web サイトを構築しており、wordpress のようなスラッグ エリアを構築したいと考えています。表示されているページに応じてフロントエンドからパス名を取得し、それをバックエンドのスラッグ領域にエコーアウトしたいと考えています。

私はphpを使用しており、フロントエンドは動的です。つまり、1つのページがあり、ユーザーがクリックしたものに応じて、そのファイルを含めます。

バックエンドのスラッグのコードを次のようにします。

<?php
//front end path/ echo $slug;
?>

私のフロントエンドパスは次のようになります: blahblah/index.php/slug-name

エコーアウトするデータベースにスラッグが保存されていますが、フロントエンドパスを取得してバックエンドでエコーアウトする方法がわからないという問題があります。フロントエンドのパスを手動で入力できることはわかっていますが、将来 Web サイトを別の場所に移動する場合に備えて、動的に入力する方がよいと思います。

pathinfo または $_SERVER を使用してみましたが、フロント エンドではなくバックエンド パスがエコーされます。

はっきりしていればいいのですが、そうでない場合は、何かを明確にするように依頼してください。再度、感謝します。

4

2 に答える 2

1

apache または nginx の書き換えモジュールが必要です。

これにより、次のようにすることができます。

PrettyPath (これはすべての訪問者に表示されます): http://blah.com/blah/bl/ah/test

=> RealPath (これは開発に使用できます): http://blah.com/blah/index.php?slug=bl/ah/test

書き換えモジュールを使用すると、このような美しい仕事を行うことができます。(書き換え例)

于 2013-04-27T19:23:28.203 に答える
0
$front_end_path = 'your/site/path';
$full_url = $front_end_path . $slug;
于 2013-04-27T19:18:17.570 に答える