function youtube_token_info_alter in YouTube Field 7
Same name and namespace in other branches
- 8 youtube.module \youtube_token_info_alter()
Implements hook_token_info_alter().
Alters and adds tokens for each youtube field.
File
- ./
youtube.inc, line 339 - YouTube field helper functions.
Code
function youtube_token_info_alter(&$data) {
// Get all youtube fields. Gather entity_type and bundle information.
$fields = field_info_fields();
$youtube_fields = array();
foreach ($fields as $name => $field) {
if ($field['type'] == 'youtube') {
foreach ($field['bundles'] as $type => $entity_type) {
foreach ($entity_type as $bundle) {
$youtube_fields[] = array(
'entity_type' => $type,
'bundle' => $bundle,
'field_name' => $name,
);
}
}
}
}
foreach ($youtube_fields as $field) {
$field_info = field_info_instance($field['entity_type'], $field['field_name'], $field['bundle']);
$field_label = $field_info['label'];
// Modify the default field token.
$data['tokens'][$field['entity_type']][$field['field_name']] = array(
'name' => $field_label . t(": Default"),
'description' => t("The YouTube video field value's Default (or Token if exists) view mode output."),
);
// Add two new tokens.
$data['tokens'][$field['entity_type']][$field['field_name'] . '__youtube_video_url'] = array(
'name' => $field_label . t(": Video URL"),
'description' => t("The YouTube video field value's youtube.com URL."),
);
$data['tokens'][$field['entity_type']][$field['field_name'] . '__youtube_image_url'] = array(
'name' => $field_label . t(": Image URL"),
'description' => t("The YouTube video field value's local image URL."),
);
}
}