如何找到包含特定字段的所有节点类型?
例如,假设我有两个节点类型“ mybio”和“ myresume”,并且两个节点类型都包含一个字段“ myphoto”。是否有一个函数将我的字段名称作为输入(“ myphoto”)并返回包含该字段的节点类型的名称(“ mybio”和“ myresume”)?
最佳答案
我不认为有功能,但是查看CCK的数据库结构可以解决问题:
function content_field_get_node_types($field_name) {
$query = db_query("SELECT DISTINCT type_name FROM {content_node_field_instance} WHERE field_name = '%s'", $field_name);
$node_types = array();
while ($row = db_fetch_array($query)) {
$node_types[] = $row['type_name'];
}
return $node_types;
}