有人可以建议我如何在.tpl文件中编写SQL查询吗?
我试图写db_select('node','n');但这不是最好的方法!我试图在template.php中写这个,但是不行!
我的代码在tpl中运行良好!
请给我一个在tpl文件中编写sql查询的解决方案
我的查询:
$node = $variables['node'];
$author = user_load($node->uid);
$query = db_select('node', 'n')
->condition('n.uid', $author->uid, '=')
->condition('type', 'agahi');
$count_query = $query->countQuery()->execute()->fetchField();
print $count_query;
答案 0 :(得分:1)
在主题template.php文件中,使用预处理功能,例如,用于从mysql获取一些数据并将其传递给node.tpl
function ample_preprocess_node(&$variables) {
if( $variables['type'] == 'your_content_type_name') {
$queryresult = db_select('tablename', 'tn')
->fields('n')
->condition('field_name', 123,'=')
->execute()
->fetchAll();
foreach ($queryresult as $queryres) {
$your_variable_name = $queryres->table_col_name;
}
$variables['your-variable-name'] = $your_variable_name;
}
}
然后在您的节点中输入--your_content_type_name.tpl.php 打印$ your_variable_name;