0

モジュールに次のコードがあります。

function mymodule_form_alter(&$form, &$form_state, $form_id) {
  if ($form_id == 'comment_node_blog_form') {
    $form['#node']->content['links']['comment']['#links']['comment-add']['title'] = t('Post a comment');
    $form['#node']->actions['submit'] = t('Post comment');
    unset($form['#node']->actions['preview']);
var_dump($form);

}

var_dump を見ると、フォーム フィールドが意図したとおりに設定されています。ただし、フォームを見ると、タイトルにはまだ「新しいコメントを追加」があり、送信ボタンは変更されておらず、プレビュー ボタンも表示されています。

ページのコンテンツ (var_dump の出力を含む) を検索すると、'Add' が存在する唯一の場所は、var_dump のコンテンツではなく、フォームのテキスト内にあります。私がそれを確認できる唯一の方法は、フックの後にフォーム配列が変更されている場合です。そのため、モジュールの重みを (mysql 経由で) 99 に変更し、キャッシュをクリアしようとしました。変わりはない。

4

1 に答える 1