テーマ |
8.9.x |
|
スマホに向いたテーマについて |
テーマ |
7.34 |
|
スマホ、PCおよびアプリを同時に運用可能なおすすめのテーマはありますでしょうか? |
コンテンツの作成 |
8.4x |
|
コンテンツ作成時のフォームレイアウトの変更 |
コンテンツの管理 |
8.5.x |
Field File |
コンテンツのフィールドの表示について |
コンテンツの作成 |
8.9.x |
CSS |
キャプション付きの(右寄/左寄)画像を画像サイズを基準にきれいに表示する方法 |
コンテンツの作成 |
6.x |
Views |
カルーセルのように回転するコンテンツを作りたい |
Custom module |
8.3x |
Custom module Twig Block Cache |
カスタムモジュールのレンダリングを非キャッシュ化する方法 |
Token |
8.4x |
Token |
カスタムモジュールからtokenを提供する方法(drupal8版) |
コンテンツの管理 |
8.4x |
Action |
カスタムアクションを作成する方法 |
token |
7.34 |
token |
オリジナルモジュールからtokenを提供する方法を教えて下さい。 |
Commerce |
8.6.x |
Commerce Payment Gateway |
オリジナルCommerce決済モジュール(Offsite)で決済サーバーへのPOST時のエンコードを変更する方法 |
言語 |
7.15 |
Language |
まだ翻訳されていない英語文、どうにかならない? |
ブロック |
7.15 |
Views |
ひとつのViewsをページやブックページ中で再利用する方法は? |
コンテンツの作成 |
8.4x |
Download |
とにかく何でもコンテンツをダウンロードさせる方法 |
サイトの環境設定 |
7.59 |
さくらのレンタルサーバー php Options |
さくらのレンタルサーバーで パブリック/プライベートディレクトリにファイルが書き込まれないとき |
パフォーマンス |
7.34 |
Server |
お金をかけないで冗長化するには |
コンテンツの作成 |
8.4x |
archiver |
zipファイル圧縮・解凍する方法 |
サイトの環境設定 |
8.6.x |
Simhony Yaml |
yamlファイルを読み込む方法 |
PHP |
8.9.x |
PHP |
YamlをPHP配列にする方法 |
フォーム |
7.38 |
Webform |
Webformモジュールをアップデートしたら「このフィールドを入力してください」 |
コメント
Drupal Commerceにおいて
パーマリンク Submitted by actbrain on 2015/01/09 14:23.
Drupal Commerceにおいて、住所を制御しているのはAddressfieldフィールドです。
Addressfieldには、入力フォームや表示に手を加えるAPIが用意されています。
サーバー内:/path/to//addressfield/addressfield.api.php
〜
8 /**
9 * Format generation callback.
10 *
11 * @param $format
12 * The address format being generated.
13 * @param $address
14 * The address this format is generated for.
15 * @param $context
16 * An associative array of context information pertaining to how the address
17 * format should be generated. If no mode is given, it will initialize to the
18 * default value. The remaining context keys should only be present when the
19 * address format is being generated for a field:
20 * - mode: either 'form' or 'render'; defaults to 'render'.
21 * - field: the field info array.
22 * - instance: the field instance array.
23 * - langcode: the langcode of the language the field is being rendered in.
24 * - delta: the delta value of the given address.
25 *
26 * @ingroup addressfield_format
27 */
28 function CALLBACK_addressfield_format_callback(&$format, $address, $context = array()) {
29 // No example.
30 }
〜
こちら、説明がないので解りにくいのですが、以下の方法で実現できます。
1./path/to/your-module/your-module.module内でAddressfieldプラグイン登録を行います。
〜
36 /**
37 * Implements hook_ctools_plugin_directory().
38 */
39 function or_commerce_ctools_plugin_directory($module, $plugin) {
40 if ($module == 'addressfield') {
41 return "$plugin/$module"; // この場合、'/your-module/format/addressfield'になります。
42 }
43 }
〜
2.プラグインファイルを用意します(/path/to/your-module/format/addressfield/japanese.inc)
〜
1 <?php
2
3 /**
4 * @file
5 * Generates Japanese format.
6 */
7
8 $plugin = array(
9 'title' => t('Ajustment Japanese format'),
10 'format callback' => 'your-module_format_japanese_ajustment',
11 'type' => 'name',
12 'weight' => 100,
13 );
14
15 /**
16 * Format callback.
17 *
18 * @see CALLBACK_addressfield_format_callback()
19 */
20 function your-module_format_japanese_ajustment(&$format, $address) {
21
22 // 住所:入力フォーム表示順調整
23 $weight = $format['country']['#weight'];
24 $format['locality_block']['#weight'] = ++$weight;
25 $format['street_block']['#weight'] = ++$weight;
26 $format['organisation_block']['#weight'] = ++$weight;
27 $format['name_block']['#weight'] = ++$weight;
28
29 // 住所:入力フォームサイズ調整
30 $width = 30; // とか
31 foreach (array('locality_block', 'street_block', 'organisation_block', 'name_block') as $n) {
32 foreach ($format[$n] as $nam => &$ele) {
33 if (strpos($nam, '#') !== 0) {
34 if (isset($ele['#size'])) {
35 $ele['#size'] = $width;
36 }
37 }
38 }
39 }
40
41 // 住所:並びを「郵便番号・都道府県・市区町村」に調整
42 $locality = $format['locality_block']['locality'];
43 unset($format['locality_block']['locality']);
44 $format['locality_block']['locality'] = $locality;
45
46 // 住所:「郵便番号・都道府県・市区町村」の横配置(locality-block)を解除・・・クラス名変更
47 foreach ($format['locality_block']['#attributes']['class'] as &$class) {
48 if ($class == 'locality-block') {
49 $class .= '-your-module';
50 }
51 elseif ($class == 'addressfield-container-inline') {
52 $class .= '-your-module';
53 }
54 }
55 }
〜
Or
パーマリンク Submitted by actbrain on 2015/10/08 00:41.
Or CommerceモジュールをインストールしてDrupal Commerceの住所情報を日本風にする手順を公開しました。
http://www.act-brain.co.jp/howto/override-commerce-install
Or Commerceモジュールは https://support.cms-pr.com/download-module からダウンロードできます。
ページ