2016-07-08 16 views

Odpowiedz

1

Można to zrobić w motywu Drupal8 poprzez ustawienie nową zmienną:

function theme_preprocess_page(&$variables) { 
    $svg = file_get_contents(drupal_get_path('theme', 'socialbase') . '/images/icons.svg'); 
    $variables['svg_sprite'] = t('svg', array('svg' => $svg)); 
} 

W pliku gałązka można go wydrukować za pomocą:

{{ svg_sprite }} 
4

Miałem podobny problem, zmieniłem nazwę moich plików svg na .twig.

{% include 'my.svg.twig' %}

+1

tak, to samo tutaj;) –

0

Dla mnie to działało:

{% include '/images/my.svg' %} 

Tylko szybka zmiana jeśli używasz Drupala 8, ponieważ kod na s realna odpowiedź nie działa dla mnie. To jak to zrobiłem:

function theme_preprocess_page(&$variables) { 
    $svg = file_get_contents(drupal_get_path('theme', 'theme_name') . '/images/my.svg'); 
    $variables['some_svg'] = $svg)); 
} 

iw pliku gałązka I outputed to tak:

{{ some_svg|raw }} 
1

W przypadku tematu jest dobrym rozwiązaniem, aby korzystać {{ directory }} zmienną, która przechowuje ścieżki do tematu.

{{ source(directory ~ '/images/my.svg') }}