Extra Block Types (EBT) - New Layout Builder experience❗

Extra Block Types (EBT) - styled, customizable block types: Slideshows, Tabs, Cards, Accordions and many others. Built-in settings for background, DOM Box, javascript plugins. Experience the future of layout building today.

Demo EBT modules Download EBT modules

❗Extra Paragraph Types (EPT) - New Paragraphs experience

Extra Paragraph Types (EPT) - analogical paragraph based set of modules.

Demo EPT modules Download EPT modules

Scroll

Отображать по Drupal Views

Отображать по Drupal Views
, by

Здравствуйте. В таксономии выводится просто 10 последних добавленных событий, а как добавить переключатель или вывести все 30 событий.

 

1 answer
votes: 811
Answer

Для начала нужно вывести этот выбор количества, если через exposed filters Views'а, тогда так:

<?php
function custom_form_alter(&$form, &$form_state, $form_id){

$form['itembypage'] = array(
      '#type' => 'radios',
      '#title' => 'Товаров на странице',
      '#default_value' => '12',
      '#options' => array(
        '12' => 12,
        '24' => 24,
        '36' => 36,
        '48' => 48,
      ),

      '#weight' => 3,
    );

}
?>

Потом нужно добавить обработку результата:

<?php
function custom_views_query_alter(&$view, &$query){
    if($view->name == 'taxonomy_term'){
    if(!empty($_GET['itembypage'])){

      $itemcount = $_GET['itembypage'];

      if (!empty($itemcount) && is_numeric($itemcount)) {
        $view->items_per_page = $itemcount;
      } else {
        $view->items_per_page = 12;
      }
    }
  }
}

В моем примере  кастомный модуль назывется custom, имя view taxonomy_term.