1

スペースをダッシュ​​に変換するさまざまなページの動的ボディIDをcodeigniterで作成する方法はありますか?

私はフォーラムや検索エンジンの周りにいましたが、運がありません。

これが私のコードです:

<body id="{$template.title}">

出力は次のとおりです。

<body id="About us">

私はそれをしたい:

<body id="about-us">

教えてくださいありがとう

4

1 に答える 1

2

おそらく、なぜこれをしたいのか説明してもらえますか?JavaScriptでページのタイトルを取得しようとしている場合は、を使用して簡単に取得できますdocument.title。一意のID値が必要な場合は、IDが「page_value」などの非表示の入力ボックスに入れるか、単にグローバルJavaScript変数に入れることができます。flashdataを使用せずにPOSTリクエストでページのID値を次のページに渡したい場合は、「page_value」などの名前の非表示の入力ボックスに入れることができます。次のページの読み込み用にデータをCodeIgniterに一時的に保存する場合は、セッションクラスでCIのflashdataを使用できます。

http://codeigniter.com/user_guide/libraries/sessions.html

ただし、本文がどのページにあるかに応じて本文に一意のIDを付けたい場合(このアプローチは少し見当違いだと思いますが)、テンプレートシステムの挿入方法を確認する必要があります。テンプレートクラスで、タイトル値を取得して空白文字を取り除き、ダッシュに置き換えるセカンダリタイトルを作成することもできます。このようなもの:

function stringURLSafe($string)
    {
        //remove any ' ' from the string and replace with '-'
        $str = str_replace(' ', '-', $string);

        // lowercase and trim
        $str = trim(strtolower($str));
        return $str;
    }
于 2010-10-05T16:44:42.847 に答える