私はhttp://www.mywebaddress.com/bids/display.php?id=idのようなウェブサイトで作成されたページを表示するために使用します が、URLにページのタイトルが付いたページを表示したいのですが、この http://のようにwww.mywebaddress.com/bids/title-of-the-bid/またはbids/title-of-the-bid.html
前もって感謝します
私はhttp://www.mywebaddress.com/bids/display.php?id=idのようなウェブサイトで作成されたページを表示するために使用します が、URLにページのタイトルが付いたページを表示したいのですが、この http://のようにwww.mywebaddress.com/bids/title-of-the-bid/またはbids/title-of-the-bid.html
前もって感謝します
これは、このサンプルだけでなく、他のクリーンな URL にも非常に役立ちます。
URL の作成に使用できる関数を次に示します。
/** * URL タイトルの作成 * * 「タイトル」文字列を入力として受け取り、 * ダッシュのいずれかを含むわかりやすい URL 文字列 * または単語区切りとしてのアンダースコア。 * * @access public * @param string 文字列 * @param string 区切り記号: ダッシュ、またはアンダースコア * @戻り文字列 */ function urlTitle($str, $separator = 'underscore', $lowercase = TRUE) { if ($セパレータ == 'ダッシュ') { $search = '_'; $replace = '-'; } そうしないと { $search = '-'; $replace = '_'; } $trans = 配列( '&\#\d+?;' => '', '&\S+?;' => '', '\s+' => $replace, '[^a-z0-9\-\._]' => '', $replace.'+' => $replace, $replace.'$' => $replace, '^'.$replace => $replace, '\.+$' => '' ); $str = strip_tags($str); foreach ($trans as $key => $val) { $str = preg_replace("#".$key."#i", $val, $str); } if ($lowercase === TRUE) { $str = strtolower($str); } return トリム (rtrim(stripslashes($str),$replace)); }
これは、codeigniter フレームワークの URL ヘルパー関数で使用されるコードに非常に似ています。
使い方?
$title = "良い言い方です"; echo urlTitle($title);//出力: "nice_way_to_put_it"
残りのカスタマイズはあなた次第ですが、確かにこれは良いスタートです
このページのURLを見てください。
URLを次のようにすることができます
http://www.mywebaddress.com/bids/1234/title-of-the-bid/
ここで、1234 は渡す投稿 ID で、次のパラメーターは、seo フレンドリーな URL を作成するのに役立ちます。
また、あなたが好きなら
http://www.mywebaddress.com/bids/title-of-the-bid/
次に、投稿のタイトルをデータベース内で一意にしてみてください。そのフィールドを介してクエリを実行し、データを取得できます。最初のオプションの方が良いでしょう。それでも 2 番目のアプローチを採用したい場合は、タイトルを一意にしてから、この記事でこれを試してください。
同じことを行うには、apache mod_rewriteを使用して URL 書き換えルールを作成する必要があります。