drupal 6: переменная node.tpl.php $ links, где настраивать содержимое? - PullRequest
0 голосов
/ 31 января 2011

Мне нужно определить порядок вывода $ links теперь у меня есть 2 модуля, отображающие его содержимое на этом: комментарии и дополнения где я могу определить порядок и изменить его настройки для узлов ... хоть немного настроить дисплей?

1 Ответ

0 голосов
/ 22 февраля 2011

Редактировать: веса ссылок можно изменить с помощью http://drupal.org/project/linkweights

Я не уверен, что существует какой-либо пользовательский интерфейс для переупорядочения / настройки ссылок на узлы.Однако вы можете сделать это несколькими способами:

Создать пользовательский модуль, который реализует hook_link_alter() и выполнить настройки.

/**
 * hook_link_alter() implementation
 * for more details see 
 * http://api.drupal.org/api/drupal/developer--hooks--core.php/function/hook_link/6
 * http://api.drupal.org/api/drupal/developer--hooks--core.php/function/hook_link_alter/6
 */
function mymodule_link_alter(&$links, $node) {
  foreach ($links as $link => $values) {
    // do something with $link

  }
return $links;
}

Вы можете пойти еще дальше и создать страницу администрирования.он получит все ссылки, выведет их в сортируемую таблицу (а-ля / admin / build / block) и сохранит порядок в переменной.Ах, ваш модуль должен иметь наибольший вес для того, чтобы перехватить все остальные ссылки.

- ИЛИ -

Измените template.php вашей темы и добавьте функцию mytheme_preprocess_node () илиотредактируйте его или phptemplate_preprocess_node (), если он существует

function phptemplate_preprocess_node(&$vars) {
  $links= $vars['node']->links;
  // uncomment the next line to see the current links
  //var_dump($links);

  // add a new link
  $link_all = array(
    'title' => 'See all nodes',
    'href' => PATH,
    //'attributes' => array('class' => 'link_class', 'id' => 'link_id', 'title' => 'link title'),
  );
  $links['link_all'] = $link_all;

  //Modify an existing link. in this case the above added one
  $links['link_all']['title'] = t('This is my custom text');

  $vars['links'] = theme_links($links);
}

Чтобы изменить порядок см. http://drupal.org/node/44435#comment-861385

...