オリジナルモジュールから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.降順で並び替える 関連モジュール タイトル
アップデート 8.8.x Composer composer updateが異常終了する
コンテンツの作成 8.9.x CKEditor CKEditor編集中の見た目をフロントと全く同様にする方法
コンテンツの作成 8.9.x node ノード保存時の前回値の参照方法
PHP 8.9.x PHP YamlをPHP配列にする方法
SESSION 8.9.x api $_SESION操作のAPI
サイトの環境設定 8.9.x 編集
コンテンツの作成 8.9.x vim nkf ファイルのエンコーディングを確認、変更する方法
PHP 8.9.x drush drush sql:cli < が機能しない場合の対処
アップデート 8.9.x composer patch patch を composer に 組み込む方法
アップデート 8.9.x Composer update Composer で drupal/core-8.9.7 に更新できなくなった場合の処置
コンテンツの作成 8.9.x CSS キャプション付きの(右寄/左寄)画像を画像サイズを基準にきれいに表示する方法
リバースプロキシ 8.9.x mod_proxy mod_proxy_http mod_ssl Apache2.4 から httpsサーバーへリバースプロキシする方法
アップデート 8.9.x PHP CentosでPHPのバージョンアップ(例:5.3->5.6)を行う方法
テーマ 8.9.x Twig Twig で 月末日を算出する方法
テーマ 8.9.x patch パッチ 開発環境のファイル変更を本番環境にパッチでデプロイする方法(画像含まず)
テーマ 8.9.x スマホに向いたテーマについて
ユーザの管理 8.9.x user pass drupal 8 で 管理者(uid=1)パスワードがわからなくなったとき 新しいパスワードを設定する方法
サイトの構築 8.9.x Webform drupalを使用した登録、一覧表示の方法について
コンテンツの作成 8.9.x Display sweet, Views, Twig Tweak, Views field formatter テーマに頼らず コンテンツのフィールドとしてViewsを埋め込み表示する方法
アップデート 8.9.x Composer update composer update するときに パッチが必要なモジュールが更新されパッチが消えてしまうことへ対応する方法

ページ