webform で 複数画像を登録しておいた中から1枚選択する

Events happening in the community are now at Drupal community events on www.drupal.org.
katow30's picture

初めて質問させていただきます。
宜しくお願い致します。
「Drupal Pro Book」と「Drupal 実践プログラミング徹底入門」を購入して現在勉強中です。

表題の件、本当はwebformでなくとも良いです。
アンケート等のノードへの入力を行うときに、あらかじめ複数枚の画像を登録した中から1枚ないしは複数枚を選択する入力項目を作る方法(モジュール)はありますか?
それとも自作になりますか?

ホームページデザインの投票ページを作りたいという要望が出まして。
デザインサンプルを画像で掲載する方がやりやすい、とユーザー側から要望が出まして検討しております。

Comments

key | value

qchan's picture

いろんな方法があると思いますが、Webformモジュールで出来る範囲の簡単な方法をまず。

Webformのフォーム設定画面がありますよね。
Form components から新しいフィールドを作ります。
typeはSelectを選んでください。

「Options:」欄に 選択させたい項目を1行1項目で書いていきますが、その際に

key | value
key | value 
key | value 

の形で書いていくと、

machine readable name | 人間が読める名前 

の様に書き分けられます。
この「人間が読める名前」の部分にImgタグを書くと画像が表示されるはずです。
ラジオボタンにするか、チェックボックスにするかは「Multiple:」で複数選択を許可するかどうかで決まります。
試してみてください。

アドバイス有難う御座います。

katow30's picture

アドバイス有難う御座います。

試しまして、ちゃんと画像付きのselectに出来ました。有難う御座いました。

画像はuploadでsites/default/filesにアップロードしてからimgタグに

src="http://xxx.co.jp/drupal/sites/default/files/www.jpg"

としてリンク先を指定したのですが、同一のdrupal(Apache)のサイト内だったので

src="sites/default/files/www.jpg"

でも行けるのかなと試しましたが表示できませんでした。

ここは省略できそうにないですかね。

厳密には、key |

dokumori's picture

厳密には、key | valueと入力する際、スペースを取り除いてkey|valueにすることを勧めます。
(多分qchanは読みやすくするためにそう書いてたと思うのだけど。)

特にMachine readable name(名前)部分にスペースが入っていると、スペースがそのまま名前の一部となってしまい、後々その値を参照するときにややこしくなるので(僕はこれで数時間無駄にした経験あり)。

複数投票しても良いのなら、1テーマにつき1ノードを作成して、voting apiを使った投票モジュールを使った方が簡単かもしれません。
http://drupal.org/project/vote_up_down
http://drupal.org/project/fivestar

試してみます

katow30's picture

補足有難う御座います。

voting apiはそのうち試してみます。

FiveStar モジュール, Plus1 モジュール

xbro's picture

詳細はわかりませんが、投票ページが目的なら、Vote API を使用するこのモジュール達はどうでしょう。完成度は高そうです。

FiveStar 投票結果などで一覧リストを作成する場合などはViewsと一緒に使用するのがお奨めだそうです。

正確な投票数を表示したい場合は Plus1 モジュールが今流行りのウェブデザインだと思います。

フォームを避けて、AJAXで投票が直ぐ画像の横とかで反映されるページの方が綺麗なやり方だと思います。
使用方法がわかったら是非ここでやり方教えて下さい。お願いします。

Plus1は、追っかけ試します

katow30's picture

情報有難う御座います。

当面Ajaxの利用があまり激しくない、大人しめのモジュールから試そうかと…すいません。

とはいえ最近は使ってないモジュールも減ってる気がしますので、どこかで試したいです。

入力と同時に表示に何か反映があるとないとでは全くもってユーザビリティに差が出ますからねえ。

フォローありがとうございます。

qchan's picture

@dokumori
スペースの件は大事なことでした。僕もハマったことあります。。
vote_up_downモジュールはすごそうですね。コメントにも付くんですか。使ってみたいです。

@katow30
うまくいってよかったです。
src="sites/default/files/www.jpg" のように書きたい時は、
src="/sites/default/files/www.jpg"
と、[/]を先頭に入れてDocument rootからの絶対パスにすると通るはずです。

Webformは投票がNodeにならないという特徴がありますので、
後での再利用を考えておられたらdokuumoriさんが紹介しているように、
VotingAPI系モジュールがよいかもしれないですね。

imgタグのsrcURL

katow30's picture

おはようございます。また試しました。試したのですが…

src="http://xxx.co.jp/drupal/sites/default/files/www.jpg"

でリンクOKなことを確認し、教わったように

src="/sites/default/files/www.jpg"

ではリンクされず、

src="/drupal/sites/default/files/www.jpg"

とするとリンクができました。
こちらが正解?
それとも私がどこかのサイトの設定値を変更しているからこうなんでしょうか。

Document root

qchan's picture

"/"からの絶対パスはドメイン "http://xxx.co.jp/" のDocument root (ドメイン直下)からの絶対パスという意味になりますから、

katow30さんがDrupalを "http://xxx.co.jp/drupal/sites/...." という風にインストールされてたら
src="/drupal/sites/default/files/www.jpg"
で正解ですよ。

ドメイン直下にDrupalをインストールしたら、src="/sites/..." になりますね。

ありがとうございました。

katow30's picture

理解できました。有難う御座いました。

日本 コミュニティ: Drupal Japan User Group

Group organizers

Group categories

Group notifications

This group offers an RSS feed. Or subscribe to these personalized, sitewide feeds: