Ich benutze das View Bulk Operation Modul, um ein mehrfaches Löschen auf meiner benutzerdefinierten Ansicht durchzuführen, wo ich meine Inhalte aufliste.Drupal 7 VBO's Hook form_alter löst nicht aus
Aber ich habe einen Wert zu überprüfen, um zu wissen, ob ich akzeptieren einen Inhalt zu löschen oder nicht ... Ich habe es geschafft, es mit der Mehrfachauswahl mit dem hook_form_alter()
auf meinem /admin/content
Blick zu tun, aber es funktioniert nicht Auslöser wenn ich dies tun auf meine benutzerdefinierte Ansicht ...
ich habe wie andere Haken versucht:
hook_views_bulk_operations_form_alter()
was schön klang ... Aber es löst nicht bei allenhook_node_delete()
haben könnte gearbeitet, aber ich habe n o Vorstellung davon, wie Sie den Löschvorgang zu stoppen, wenn in der Funktion (exit;
oderbreak;
nur einen Fehler aus, und ich nicht, warum)
Mein Code des hook_form_later, die mit der ‚Content-Seite‘ funktionieren:
function MODULE-NAME_form_alter(&$form, &$form_state, $form_id) {
foreach($form['nodes'] as $pnode)
{
if(is_array($pnode))
{
if(!isDeletable($pnode['#value'])) // my function which says if we can delete the content
{
$n = node_load($pnode['#value']);
$status = isset($n->workbench_moderation['current']->state) ? $n->workbench_moderation['current']->state : false;
$string = "This content won't be deleted : ".substr($pnode['#suffix'],0,-6); // substr to cut off the '</li>' !
drupal_set_message(t($string), 'warning');
unset($form['nodes'][''.$pnode['#value']]); // get the content off the form (my way to say that the content shouldn't be deleted)
}
}
}
}
Wie funktioniert hook_views_bulk_operations_form_alter()
auslösen?