2012-06-13 2 views
1

У меня есть URL-адрес, который выглядит следующим образом:TYPO3 RealURL postVarSets скрыть ключевое слово

http://domain.com/leistungen/industrial-design/?tx_fsproject_fsprojectfp%5Bproject%5D=2&tx_fsproject_fsprojectfp%5Baction%5D=show&tx_fsproject_fsprojectfp%5Bcontroller%5D=Project&cHash=7c405bcde49853af9a7e78bdf465002c 

Использование RealUrl со следующей конфигурацией (и некоторые функции крючками, как объяснена here):

'postVarSets' => array(
     '_DEFAULT' => array(
      // projects 
      'industrial-design' => array(
       array(
        'GETvar' => 'tx_fsproject_fsprojectfp[controller]', 
       ), 
       array(
        'GETvar' => 'tx_fsproject_fsprojectfp[action]', 
       ), 
       array(
        'GETvar' => 'tx_fsproject_fsprojectfp[project]', 
        'lookUpTable' => array(
         'table' => 'tx_fsproject_domain_model_project', 
         'id_field' => 'uid', 
         'alias_field' => 'title', 
         'addWhereClause' => ' AND deleted !=1 AND hidden !=1', 
         'useUniqueCache' => 1, 
         'useUniqueCache_conf' => array(
          'strtolower' => 1, 
          'spaceCharacter' => '-', 
         ) 
        ) 
       ), 
      ), 
     ), 
    ), 

Я получаю URL-адрес выглядит следующим образом:

http://domain.com/leistungen/industrial-design/industrial-design/projekt/project-b/ 

Это не плохо. Однако почему часть industrial-design/ появляется дважды?

ответ

5

Первый промышленный дизайн - страница, которая отображается. Второй - это ключевое слово, вставленное RealURL для идентификации набора переменных. Чтобы избежать этого, вы можете:

  1. изменить структуру страниц, так что вы не промышленного дизайна страницы на всех.
  2. Переименуйте postVarSets, которые вы настроили в конфигурации RealURL.
  3. Вместо этого используйте fixedPostVars, так как это не использует ключевое слово для идентификации набора переменных, а UID страницы.
+0

'fixedPostVarSets' выполнил эту работу. Спасибо вам обоим. –

+2

Мне любопытно ... Я не могу найти документацию на 'fixedPostVarSets' или как ее использовать. Все примеры онлайн только имеют его как пустой массив. Если вы Google для этого, вы найдете этот пост здесь. Используется ли он как 'postVarSets' с идентификатором страницы вместо' _DEFAULT' или идентификатором страницы вместо ключевого слова postVar? – slhck

+1

@slhck: S ***! Прости. Теперь я понял, что это должно быть 'fixedPostVars'. При написании своего ответа я опечатал его из-за смешанного именования RealURL: 'postVarSets' VS' preVars', 'fixedPostVars'. Не могу поверить, что эта ошибка так долго оставалась в ответе. Спасибо, что указали! – tmt

 Смежные вопросы

  • Нет связанных вопросов^_^