Создание идентификатора тела в CodeIgniter - PullRequest
1 голос
/ 05 октября 2010

Есть ли способ создать динамический идентификатор тела в codeigniter для разных страниц, который преобразует пробелы в тире?

Я был на форумах и в поисковых системах, но мне не повезло.

Вот мой код:

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

Вот вывод:

<body id="About us">

Я хочу, чтобы это было:

<body id="about-us">

дайте мне знать Спасибо

1 Ответ

2 голосов
/ 05 октября 2010

Не могли бы вы объяснить, возможно, почему вы хотите это сделать?Если вы пытаетесь получить заголовок страницы в javascript, вы можете легко сделать это, используя document.title.Если вы хотите иметь уникальное значение идентификатора, вы можете либо поместить его в скрытое поле ввода с идентификатором «page_value», либо что-то в этом роде, либо вы можете просто поместить его в глобальную переменную javascript.Если вы хотите передать значение id страницы на следующую страницу в запросе POST без использования flashdata, вы можете поместить его в скрытое поле ввода с именем «page_value» или чем-то еще.Если вы хотите временно сохранить данные для следующей загрузки страницы в CodeIgniter, вы можете использовать флэш-данные CI в классе сессий:

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

Но, если вы хотите дать телоуникальный идентификатор в зависимости от того, на какой странице он находится (и хотя я думаю, что этот подход немного ошибочен), вам придется взглянуть на методы вставки вашей системы шаблонов.Возможно, вы могли бы создать дополнительный заголовок в вашем шаблонном классе, который принимает значение заголовка, удаляет пробельные символы и заменяет его тире.Как то так:

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

        // lowercase and trim
        $str = trim(strtolower($str));
        return $str;
    }
...