Как вставить содержимое TXT-файла в шаблон веточки - PullRequest
0 голосов
/ 26 марта 2019

Triyng для запуска магазина opencart в первый раз

В корне сайта у меня есть файл "file.ssi"

Как вставить его содержимое в шаблон веточки?(header.twig)

Почему важно, чтобы файл находился в корне и назывался file.ssi - у меня есть скрипт, который периодически меняет содержимое этого файла на многих моих сайтах, и настатические html сайты или wordpress Я печатаю содержимое файла file.ssi в шаблон с помощью SSI, и как это сделать на ветке, я не понимаю

Я пытался написать в header.twig

{{ bla_bla }}

затем в каталоге \ controller \ common \ header.php

$data['bla_bla'] = sprintf($this->language->get('text_bla_bla'), $this->config->get('config_name'), date('Y', time()));

затем в каталоге \ language \ ru-ru \ common \ header.php

$_['text_bla_bla']        = 'my html code 1';

и этоHTML-код печатается в нужном месте.Но когда я попытался сделать что-то вроде этого

$_['text_bla_bla']        = 'my html code 1' . $bla_bla_bla = file_get_contents('/file.ssi');
echo $bla_bla_bla; . 'my html code 2';

сайт даже не открывается

Я понимаю чистую ошибку php и мои скромные знания (или, скорее, незнание) php недостаточно, чтобы получить в $ _ ['text_bla_bla'] пару фрагментов html и содержимое файла между ними.

В общем, мне нужно вставить что-то вheader.twig, или как то решить с помощью php, я сам не понимаю, где это было не так.

Ответы [ 3 ]

1 голос
/ 26 марта 2019

Это работает!в контроллере

$data['mydata'] = file_get_contents($path);

в шаблоне

{{ mydata }}
0 голосов
/ 27 марта 2019

неверный синтаксис:

$_['text_bla_bla']        = 'my html code 1' . $bla_bla_bla = file_get_contents('/file.ssi');
echo $bla_bla_bla; . 'my html code 2';

Если вам нужно использовать sprinf, чтобы в языковом файле вы могли получить эти данные $this->config->get('config_name'), date('Y', time(), используя %s %d

 $_['text_bla_bla']        = 'my html code 1 %s %d';
0 голосов
/ 26 марта 2019

Это будет выглядеть так:

Контроллер:

$text = file_get_contents($path);
    return $this->render('page.html.twig', [
        'text' => $text,
    ]);

Тогда в вашем шаблоне веточки:

{{ text }}
...