2012-03-07 38 views
5

Tôi cần hiển thị một số dữ liệu ngoài từ tệp php sang tệp .tpl. Đối với điều này tôi muốn bao gồm tập tin php vào tập tin .tpl. Tôi đã thử mã folllowing để hiển thị nội dung tập tin php để tpl.Cách thêm mã PHP vào tệp .tpl

{php} include('custom_code.php'); {/php} 

nhưng về sản lượng trang đã include('custom_code.php');

+0

Và delimiters Smarty của bạn là '{} '? Nếu chúng là '{{}}' thì sao? –

Trả lời

4

{php} không được dùng nữa. Hãy xem Extending Smarty With Plugins.

đặt follwing trong …/plugins/function.yourplugin.php:

<?php 
function smarty_function_yourplugin(array $params, Smarty_Template_Instance) { 
    include 'your_other_file.php'; 
} 

và sử dụng trong mẫu của bạn:

{yourplugin} 
+0

nhờ rodneyrehm cho giải pháp, tôi sẽ cố gắng giải pháp của bạn. – absolutek

1

Có một hướng dẫn thực hành tốt nhất trên trang chủ của smarty. # 1 là không nhúng PHP!

http://www.smarty.net/best_practices

Hãy thử điều này: {include_php file="/path/to/somefile.php"}

Nhưng thông báo:

{include_php} is deprecated from Smarty, use registered plugins 
to properly insulate presentation from the application code. 
As of Smarty 3.1 the {include_php} tags are only available 
from SmartyBC. 

Vì vậy, cách tốt nhất là viết một plugin smarty như được giải thích bởi rodneyrehm

1

Bạn không nên thêm PHP mã vào mẫu. Nó sẽ làm cho toàn bộ ý tưởng của các mẫu hư hỏng.

Bạn phải thêm mã PHP vào bộ điều khiển, không phải mẫu.

Các vấn đề liên quan