Есть ли какие-нибудь зацепки для лучших экспонированных фильтров? - PullRequest
2 голосов
/ 04 декабря 2011

Я пытаюсь изменить вывод "Better Exposed Filters". При отображении параметров сортировки в виде ссылок модуль всегда будет выводить ссылки для сортировки по возрастанию и по убыванию. Я хочу удалить опцию по убыванию для каждого критерия сортировки.

Я сделал ужасный хак в файл better_exposed_filters.theme, который находится прямо в каталоге модуля, например:

function theme_select_as_links($vars) {

    //function does its stuff

    foreach ($element_set as $key => $value) {
        if (strpos($key, " DESC")) {
            continue;
        }
        //foreach loop does its stuff

    }
}

Хотя это работает просто отлично, очевидно, что это сделано не в том месте. Следующее обновление наверняка сломает его. Есть ли ловушка для «Улучшенных открытых фильтров», которую я мог бы использовать в своем файле шаблона?

Ответы [ 2 ]

1 голос
/ 15 сентября 2016

Вы практически там!

Способ работы Drupal заключается в том, что любая функция, которая начинается с theme_blah_blah, может быть скопирована и помещена непосредственно в ваш template.php вашей пользовательской темы. Затем вы изменяете фактический вызов с theme_ на yourcustomthemename_

Так что в этом случае у вас есть function theme_select_as_links($vars) {, который вы бы изменили на function myawesometheme_select_as_links($vars)

0 голосов
/ 30 мая 2014

Посмотрите на: Erik Web - определение хука и найдите поиск над реализацией определения хука внутри модуля.Таким образом, вы можете узнать каждый крючок, который можно использовать.Я бы пошел на: module_invoke_all, module_implements, drupal_alter, module_invoke

...