Skip to content
GitLab
Menu
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
project
drupal
Commits
295feb1d
Commit
295feb1d
authored
Feb 10, 2009
by
webchick
Browse files
#370037
by bjaspan: Add means of getting all instances of a field.
parent
00e38fb0
Changes
2
Hide whitespace changes
Inline
Side-by-side
modules/field/field.autoload.inc
View file @
295feb1d
...
...
@@ -505,7 +505,9 @@ function field_info_bundle_entity($bundle) {
* Return array of all field data, keyed by field name.
*
* @return
* An array of Field objects.
* An array of Field objects. Each Field object has an additional
* property, bundles, which is an array of all the bundles to which
* this field belongs.
*
* This function is an autoloader for _field_info_fields() in modules/field/field.info.inc.
*/
...
...
@@ -518,6 +520,11 @@ function field_info_fields() {
* Return data about an individual field.
*
* @param $field_name
* The name of the field to retrieve.
* @return
* The named field object, or NULL. The Field object has an additional
* property, bundles, which is an array of all the bundles to which
* this field belongs.
*
* This function is an autoloader for _field_info_field() in modules/field/field.info.inc.
*/
...
...
modules/field/field.info.inc
View file @
295feb1d
...
...
@@ -156,10 +156,12 @@ function _field_info_collate_types($reset = FALSE) {
* If $reset is TRUE, nothing.
* If $reset is FALSE, an array containing the following elements:
*
* fields: array of all defined Field objects, keyed by field name
*
* instances: array of bundled field info, keyed by bundle name
* * contains all FieldInstance objects for this bundle, keyed by field name.
* - fields: array of all defined Field objects, keyed by field
* name. Each field has an additional element, bundles, which is
* an array of all bundles to which the field is assigned.
* - instances: array whose keys are bundle names and whose values
* are an array, keyed by field name, of all Instance objects in
* that bundle.
*/
function
_field_info_collate_fields
(
$reset
=
FALSE
)
{
static
$info
;
...
...
@@ -184,6 +186,7 @@ function _field_info_collate_fields($reset = FALSE) {
$instances
=
field_read_instances
();
foreach
(
$instances
as
$instance
)
{
$info
[
'instances'
][
$instance
[
'bundle'
]][
$instance
[
'field_name'
]]
=
$instance
;
$info
[
'fields'
][
$instance
[
'field_name'
]][
'bundles'
][]
=
$instance
[
'bundle'
];
}
cache_set
(
'field_info_fields'
,
$info
,
'cache_field'
);
...
...
@@ -389,7 +392,9 @@ function _field_info_bundle_entity($bundle) {
* Return array of all field data, keyed by field name.
*
* @return
* An array of Field objects.
* An array of Field objects. Each Field object has an additional
* property, bundles, which is an array of all the bundles to which
* this field belongs.
*/
function
_field_info_fields
()
{
$info
=
_field_info_collate_fields
();
...
...
@@ -400,6 +405,11 @@ function _field_info_fields() {
* Return data about an individual field.
*
* @param $field_name
* The name of the field to retrieve.
* @return
* The named field object, or NULL. The Field object has an additional
* property, bundles, which is an array of all the bundles to which
* this field belongs.
*/
function
_field_info_field
(
$field_name
)
{
$info
=
_field_info_collate_fields
();
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment