Программно изменить стиль представления

Главные вкладки

Аватар пользователя Dreick Dreick 11 октября 2018 в 14:48

Скажите, можно программно изменить стиль представления, например с HTML списка на Неформатированный список, если да, то как? я уже весь гугл прошарил, а ответа так не нашел.

Лучший ответ

Аватар пользователя Dreick Dreick 12 октября 2018 в 6:07
1

Не стал мучиться третий день и пошел другим ходом. Я для каждого словаря таксономии хотел менять стиль, подумал что какое-то извращение и лучше буду для каждого словаря подменять представление и в этом мне помог TVI. И спасибо что помогал!

Комментарии

Аватар пользователя OldWarrior OldWarrior 11 октября 2018 в 21:03

Например, как-то так (второе или третье из Гугла):

<?php
...
function 
themename_views_default_views_alter(&$views) {
 if (isset(
$views['commerce_products']) {
  
$views['commerce_products']->display['default']->display_options['style_plugin'] = 'table';

}
...

?>
Аватар пользователя OldWarrior OldWarrior 11 октября 2018 в 21:48

Пардон, да. Не обратил внимание на версию, почему-то решил что D7.
Думаю, hook_views_pre_render.

<?php
function hook_views_pre_render(\Drupal\views\ViewExecutable $view) {
    
// Для начала можно попробовать что-то узнать так.
    
dpm($view->style_plugin->options); 
}
?>

Далее, видимо
Drupal\views\ViewExecutable::getDisplay
и
Drupal\views\Plugin\views\display\DisplayPluginBase::setOption

Аватар пользователя Dreick Dreick 12 октября 2018 в 6:07
1

Не стал мучиться третий день и пошел другим ходом. Я для каждого словаря таксономии хотел менять стиль, подумал что какое-то извращение и лучше буду для каждого словаря подменять представление и в этом мне помог TVI. И спасибо что помогал!