私は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 書き換えルールを作成する必要があります。