web-dev-qa-db-ja.com

致命的なエラー:未定義の関数media_filterの呼び出し

Mediaモジュールを2.0-alpha2 + 6-devと2.0-beta1からアップグレードしましたが、ランダムページに次のエラーが発生しました。

(!)致命的なエラー:224行目のmy_module.moduleで未定義の関数 `media_filter()`を呼び出しています

私のモジュールのhook_field_formatter_viewのコードは次のとおりです。

$element[0]['#markup']
  = '<div class="my-formatter-slide-down-container"><div class="text-summary ' . ($settings['hide_summary'] ? 'hiding' : '') . '">'
  . media_filter($text_summary)
  . '<a href="' . $read_more_link . '" class="read-more">' . $read_more_text . '</a>'
  . '</div></div>';

その media_filter function のコードは:

function media_filter($text) {
  $text = preg_replace_callback(MEDIA_TOKEN_REGEX, 'media_token_to_markup', $text);
  return $text;
}

代わりに使用できるその機能の現在の代替品は何ですか?

1
kenorb

新しいバージョンのMediaより前のバージョンでは、代わりにmedia_wysiwyg_filterを使用して、メディアマークアップフィルターを実行する必要があります。これはmodules/media_wysiwyg/includes/media_wysiwyg.filter.incにあります。

コードは次のとおりです。

/**
 * Filter callback for media markup filter.
 */
function media_wysiwyg_filter($text) {
  $text = preg_replace_callback(MEDIA_WYSIWYG_TOKEN_REGEX, 'media_wysiwyg_token_to_markup', $text);
  return $text;
}
4
kenorb