2017-11-24 11 views
0

私は次と前の記事のリンクを出力する私のカスタムモジュール用の小枝テンプレートを作りたいと思います。 {{nextprev}}PHP変数をtwigでどのように表示できますか?

として、私は小枝で私の$ nextprevlinksをプリントアウトしたい私は

public function build() { 
    /** 
     * {@inheritdoc} 
     */ 

     $node = \Drupal::request()->attributes->get('node'); 
     $created_time = $node->getCreatedTime(); 
     $nextprevlinks .= $this->generateNext($created_time); 
     $nextprevlinks .= $this->generatePrevious($created_time); 

     $renderable = [ 
     '#theme' => 'nextprev_template', 
     '#nextprev' => 'nextprevlinks', 
     ]; 
     $rendered = drupal_render($renderable); 

    } 

} 

を使用して、私のコントローラファイルで

<?php 
/** 
* @file 
* Code for the nextprev module. 
*/ 
function nextprev_theme($existing, $type, $theme, $path) { 
    return [ 
     'nextprev_template' => [ 
     'variables'=> [ 
       'nextprev' => 'Some_value', 
      ], 
    ], 
    ]; 
    } 

を持っている私の.moduleファイルで

私のモジュールフォルダ内にtwigテンプレートを作成しましたが動作しますが、私は{{nextprev}}変数を表示できません。kintを使用するとNullを返します。

私もでnextprev.routing.yml追加:

$renderable = [ 
    '#theme' => 'nextprev_template', 
    '#nextprev' => $nextprevlinks, 
    ]; 

しかし、私はあなたがこのようなコントローラからレンダリング可能な配列を返した場合、それは、より良いcoildと思う:これが働かなければならない

nextprev.block: 
    path: /node 
    defaults: 
    _controller: Drupal\nextprev\Controller\NextPrevLinksBlock::build 
    requirements: 
    _permission: 'access content' 

答えて

0

return [ 
    '#theme' => 'nextprev_template', 
    '#nextprev' => $nextprevlinks, 
]; 
関連する問題