オリジナルモジュールからtokenを提供する方法を教えて下さい。

カテゴリ token コアバージョン 7.34 関連モジュール token

メールの設定時やメタタグ設定時等、様々なシーンでtokenが利用できますが、オリジナルモジュールからtokenを提供する方法を教えて下さい。

コメント

ユーザー actbrain の写真

yourmodule.module内に以下のようなコードを追加します。

/**
 * Implements hook_token_info().
 */
function yourmodule_token_info() {
  $types['your-token-type'] = array(
    'name' => t('Your token type'),
    'description' => t('...'),
  );
  $tokens['your-token-name'] = array(
    'name' => t('Your token name'),
    'description' => t('Your token description.'),
  );
  return array(
    'types' => $types,
    'tokens' => array(
      'your-token-name' => $tokens,
    ),
  );
}
/**
 * Implements hook_tokens().
 */
function your-module-name_tokens($type, $tokens, $data = array(), $options = array()) {
  $replacements = array();
  $sanitize = !empty($options['sanitize']);
  switch ($type) {
    case 'your-token-type':
      $value = 'your-value';
      if ($sanitize) {
        $value = check_plain($value);
      }
      $replacements['your-token-name'] = $value;
      break;
  }
  return $replacements;
}

ページ

OTHER FAQ

Drupal開発・運用の疑問/質問の答えはここに

無料ユーザー登録すると質問できます。

カテゴリ昇順で並び替える Core Ver. 関連モジュール タイトル
Viewsプログラミング 8.4x Views drupal8におけるViewsプログラミング
Viewsプログラミング 8.6.x Views Drupal8 Viewsの動的キャッシュをクリアする方法
Views Exposed Filter 8.4x hook_views_pre_view Views Exposed Formの複数単語入力(textfield)をフォーム上だけ複数行入力(textarea)にする方法
Views 8.4x hook_views_query_alter Viewsクエリに多くの条件を追加する方法
Views 8.4x hook_views_query_alter 現在のViewsクエリを保存・再現する方法
Views 8.4x hook_views_query_alter Viewsクエリの条件式にサブクエリを追加する方法
video 8.4x video map 動画上にクリッカブルマップを作成する方法
Token 8.4x Token カスタムモジュールからtokenを提供する方法(drupal8版)
token 7.34 token オリジナルモジュールからtokenを提供する方法を教えて下さい。
SSH 7.50 ProxyCommand SSH IP制限を1コマンドで通過する
SFTP 8.4x SFTP RSA SFTP(RSA)でファイル転送(送信)する方法
SESSION 8.9.x api $_SESION操作のAPI
Proxy 7.59 Proxy Apache settings.php リバースプロキシ(Apache)+バックグランドWeb(Drupal 7 )でログインセッションを維持する方法
PhpStorm 7.50 LocalForward PhpStormから踏み台を使う
PHP-FPM 8.9.x PHP PHP-FPM 環境で .htaccess に php_value を 書いてもダメ
PHP 7.22 PHP ノードに付いたコメントを好きな場所に表示する
PHP 8.3x PHP drupa8でhook_init()する方法
PHP 8.9.x PHP YamlをPHP配列にする方法
PHP 8.9.x drush drush sql:cli < が機能しない場合の対処
PCRE 7.50 preg_match()がおかしい

ページ