Имеется функция в модуле Comment вида:
function _comment_per_page() {
return drupal_map_assoc(array(10, 30, 50, 70, 90, 150, 200, 250, 300));
}
Она отвечает за настройку количества комментариев на странице в настройках типа материала в админке. Мне нужно задать свой вариант (к примеру, 15 или 20 комментариев на страницу). Попробовал добавить свой вариант в файл модуля - работает. Как бы теперь это дело переопределить без правок в самом файле модуля Comment?
Комментарии
Надо подниматься до уровня ближайшей theme_ или hook_
sas@drupal.org, ближайший hook_ это
/**
* Implements hook_forms().
*/
function comment_forms() {
$forms = array();
foreach (node_type_get_types() as $type) {
$forms["comment_node_{$type->type}_form"]['callback'] = 'comment_form';
}
return $forms;
}
hook_forms, что и куда дальше не знаю
Сейчас еще поиском нашел схожее, ознакамливаюсь. Спасибо за наводку.
<?php
/**
* Implements hook_form_FORM_ID_alter().
*/
function MY_MODULE_form_node_type_form_alter(&$form, $form_state) {
// Назначаем элементу process-функцию
$form['comment']['comment_default_per_page']['#process'][] = 'MY_MODULE_comment_default_per_page_process';
} // Рализация process-функции элемента comment_default_per_page
function MY_MODULE_comment_default_per_page_process($element, $form_state, $form){
$element['#options']=array(15=>'15',20=>'20');
// Элемент вернуть ОБЯЗАТЕЛЬНО.
return $element;
}
?>
orion76, спасибо, все работает.