Modelos com nomes idênticos e Smarty
Pergunta
Eu tenho um pequeno problema com Smarty ... Eu tenho dois arquivos de modelo diferentes em dois diretórios diferentes que acontecem ter o mesmo nome. Infelizmente Smarty recebe-los confusos. Ele usa o último a ser atualizado para criar um arquivo compilado em sua / templates_c pasta, que ele usa para exibir a página.
Isto significa que ambos os arquivos acabam parecendo o último a ser atualizado, até pensei que eles são completamente diferentes.
Eu posso resolver isso renomear um dos arquivos, ou, presumivelmente, chamando clear_compiled_tpl
. Eu estava pensando, no entanto, se há uma maneira melhor. não existe uma maneira de configurar o Smarty para prestar atenção para a pasta um arquivo de modelo está em ao criar seus arquivos compilados?
Edit: eu estou usando Smarty v2.6.19
Solução
Tente isto antes de emitir seus modelos, é realmente uma otimização de diretórios com milhares de arquivos de modelo, mas pode resolver o seu problema:
$smarty->use_sub_dirs = true;
Outras dicas
Se os arquivos estiverem nas mesmas pastas template_dir mas diferentes, Smarty deve fazer diferentes arquivos compilados muito bem. Se você estiver usando mais de um template_dir e apenas um compile_dir, certifique-se de definir um $ única smarty-> compile_id para cada pasta de modelo.