SlideShare ist ein Scribd-Unternehmen logo
1 von 17
Downloaden Sie, um offline zu lesen
一歩進んだ Views の使い方
スタジオ・ウミ 山中
● Drupal 歴5年
● 最近はテーマ作成などフロントエンド中心
● モジュール作成したり顧客対応したりDrupalの保守したりもします
● 趣味はアニメを見たりゲームをしたり
ライブに行ったり楽器(クラリネット)を吹くこと
自己紹介- 山中 麻千子 🍵
2
自己紹介- スタジオ・ウミについて
● Drupal での開発経験は10年以上
● ディレクション、要件定義、デザイン、開発、
保守運用、Drupal導入サポート等
● Web サイト: https://www.studio-umi.jp/
● Drupal Dawn: https://drupaldawn.jp/
○ 国内の Drupal サイトを集めたギャラリーサイト
3
このセッションの
対象者
● Views をちょっとだけ
さわったことがある方
● コードをほとんど書かずに
Drupal で機能を構築したい方
● Drupal の凄さを知りたい方
4
Views とは?
● コンテンツの一覧などを作成できる機能を提供するモジュール
● SQL の組み立てから表示までコードを一切書かずに行うことができる
● Drupal 8からコアに取り込まれた
● ほぼすべての Drupal サイトで使われる、Drupalの根幹となるモジュール
5
● ただ単純に一覧をつくるためだけのモジュールではない
● SQL の組み立てから表示までを行う
= 様々な条件に応じたコンテンツを表示することができる
● 一歩進んだ Views の使い方をご紹介します!
○ フィルター / リレーションシップ / コンテクスチュアルフィルター
○ コントリビュートモジュールの追加で Views を拡張
● Drupal 8 ・ブロックの使い方がある程度知っていることを前提
Views は一覧を作るためのモジュール?
6
Views だけでできること
\ 一歩進んだ /
弊社ブログを実験台に
デモをしながら3つご説明します
7
● フィルターの条件を使用
● 検索フォームの項目として使いたい条件の設定で下記項目にチェック
このフィルターを訪問者へ表示し、変更できるようにする
● ちなみに、外部設置フォームをブロックで提供で
「はい」を選択すると検索フォームがブロックとして
使用可能
一覧ページに簡易的な検索フォームを追加
8
一覧ページに詳しい投稿者情報を表示
● リレーションシップを使用
● コンテンツカテゴリーの
コンテンツの投稿者 を追加
● 追加したいユーザーの情報を
フィールドから追加
( ユーザーカテゴリーで絞り込むとちょっと
探しやすくなります)
9
● コンテクスチュアルフィルターを使用
● コンテンツ カテゴリーの ID を追加し、
フィルター値が利用可能でない時の
デフォルトの値を指定 にチェックを入れタイプ を
URL から取得したコンテンツ ID に設定
今見ているページ*1
の情報を別ブロックに表示
*1
Node で作成されたページに限ります
10
● CSV / JSON への書き出し
● スライドショー
● ポップアップフォトギャラリー
● Google Map との連携
※ 別途 Google Map API キーの登録が必要
以上の4つをご紹介
モジュールの
追加で
Views を拡張
\ さらに Views を活用 /
11
CSV / JSON への書き出し
● CSV Serialization をインストール
○ コアモジュールの Serialization, RESTful Web Services も必要
● Views 作成時に REST エクスポート設定 が追加されるので選択
○ 既存の ビューに設定する場合は フォーマットにシリアライザー が追加されるので選択
● フォーマット シリアライザーの設定で CSV か JSON を選択
● その他追加したいフィールドを追加
12
● Slick Carousel, Blazy*3
, Slick views をそれぞれインストール
● モジュールに必要なライブラリを追加
○ Drupal ルートディレクトリ上に libraries ディレクトリを作成して追加
○ 詳しい追加方法は README ファイル を確認
● Views のフォーマットに
Slick Carousel が追加されるので選択
● その他スライドショーに関する設定を行う
スライドショー
*3
2018年11月現在では Drupal のセキュリティアドバイザリーポリシーの対象外のモジュールとなっているため、
セキュリティ面について十分にご考慮いただいた上でご利用ください。
13
ポップアップフォトギャラリー
● Colorbox をインストール
● モジュールに必要なライブラリを追加
○ drush が有効であれば drush で追加可能
○ 詳しい追加方法は README ファイル を確認
● Views の設定で対象の画像フィールドの
フォーマッターで Colorbox を選択
● サムネイル画像やグルーピングなどを設定
$ drush colorbox-plugin
14
Google Map との連携
● Geofield と Geofield Map*4
をインストール
○ Geofield モジュールは geoPHP ライブラリが必要なので Composer を使ってダウンロード
● Google Map API Key*5
を設定
● 地図のコンテンツタイプにフィールド Geofield を追加
○ フォームの表示設定でウィジェットを Geofield Map に設定
● Views でフィールドに作成した Geofield を追加後、フォーマットに
Geofield Google Map を選択して、マップに好きな設定をする。
$ composer require 'drupal/geofield’
*4
2018年11月現在では Drupal のセキュリティアドバイザリーポリシーの対象外のモジュールとなっているため、
セキュリティ面について十分にご考慮いただいた上でご利用ください。
*5
環境設定 » システム » Geofield Map settings のページの Gmap API Key で設定可能です。 Google Map API は別途取得ください。 15
このセッションで紹介した Views の使い方
全部プログラムコードを書いてません✌
(一部コンソールでの作業は必要ですが)
Views を使いこなせれば
できることが広がります!
16
\ ご清聴ありがとうございました /

Weitere ähnliche Inhalte

Was ist angesagt?

Hubsカスタマイズ 行動ログ取得やバックエンドの話
Hubsカスタマイズ 行動ログ取得やバックエンドの話Hubsカスタマイズ 行動ログ取得やバックエンドの話
Hubsカスタマイズ 行動ログ取得やバックエンドの話hironroinakae
 
Android タブレットにLinuxを入れて色々と遊んでみよう 続編その2 Hacking of Android Tablet on Linux 2
Android タブレットにLinuxを入れて色々と遊んでみよう 続編その2 Hacking of Android Tablet on Linux 2Android タブレットにLinuxを入れて色々と遊んでみよう 続編その2 Hacking of Android Tablet on Linux 2
Android タブレットにLinuxを入れて色々と遊んでみよう 続編その2 Hacking of Android Tablet on Linux 2Netwalker lab kapper
 
ゴルフゲームでUnityの限界を突破する方法
ゴルフゲームでUnityの限界を突破する方法ゴルフゲームでUnityの限界を突破する方法
ゴルフゲームでUnityの限界を突破する方法Nohina Hidenari
 
データベース技術の羅針盤
データベース技術の羅針盤データベース技術の羅針盤
データベース技術の羅針盤Yoshinori Matsunobu
 
ChatGPT以後の時代をどう生きるか PWA Night vol.51
ChatGPT以後の時代をどう生きるか PWA Night vol.51ChatGPT以後の時代をどう生きるか PWA Night vol.51
ChatGPT以後の時代をどう生きるか PWA Night vol.51hedachi
 
Mayaカメラデータunityインストール
MayaカメラデータunityインストールMayaカメラデータunityインストール
Mayaカメラデータunityインストール小林 信行
 
DNNコンパイラの歩みと最近の動向 〜TVMを中心に〜
DNNコンパイラの歩みと最近の動向 〜TVMを中心に〜DNNコンパイラの歩みと最近の動向 〜TVMを中心に〜
DNNコンパイラの歩みと最近の動向 〜TVMを中心に〜Takeo Imai
 
MongoDBアプリの実例
MongoDBアプリの実例MongoDBアプリの実例
MongoDBアプリの実例Kazuyuki Namba
 
Developers Summit 2014 「Play2/Scalaでドメイン駆動設計を利用した大規模Webアプリケーションのスクラム開発の勘所」
Developers Summit 2014  「Play2/Scalaでドメイン駆動設計を利用した大規模Webアプリケーションのスクラム開発の勘所」Developers Summit 2014  「Play2/Scalaでドメイン駆動設計を利用した大規模Webアプリケーションのスクラム開発の勘所」
Developers Summit 2014 「Play2/Scalaでドメイン駆動設計を利用した大規模Webアプリケーションのスクラム開発の勘所」Yoshimura Soichiro
 
さるでも分かりたい9dofで作るクォータニオン姿勢
さるでも分かりたい9dofで作るクォータニオン姿勢さるでも分かりたい9dofで作るクォータニオン姿勢
さるでも分かりたい9dofで作るクォータニオン姿勢ytanno
 
IT系エンジニアのためのプレゼンテーション入門
IT系エンジニアのためのプレゼンテーション入門IT系エンジニアのためのプレゼンテーション入門
IT系エンジニアのためのプレゼンテーション入門Masahito Zembutsu
 
Unityで始めるバージョン管理 Git LFS 入門編
Unityで始めるバージョン管理 Git LFS 入門編Unityで始めるバージョン管理 Git LFS 入門編
Unityで始めるバージョン管理 Git LFS 入門編NAKAOKU Takahiro
 
そろそろ知っておきたい!!コンテナ技術と Dockerのキホン
そろそろ知っておきたい!!コンテナ技術とDockerのキホンそろそろ知っておきたい!!コンテナ技術とDockerのキホン
そろそろ知っておきたい!!コンテナ技術と DockerのキホンNaoki Nagazumi
 
Unityは神,Unrealは現実
Unityは神,Unrealは現実Unityは神,Unrealは現実
Unityは神,Unrealは現実Linea319
 
こわくない Git
こわくない Gitこわくない Git
こわくない GitKota Saito
 
マネジメントレスのススメ - VPoE-Meetup by manaboo
マネジメントレスのススメ - VPoE-Meetup by manabooマネジメントレスのススメ - VPoE-Meetup by manaboo
マネジメントレスのススメ - VPoE-Meetup by manabooNoriaki Kadota
 
Nervesが開拓する「ElixirでIoT」の新世界
Nervesが開拓する「ElixirでIoT」の新世界Nervesが開拓する「ElixirでIoT」の新世界
Nervesが開拓する「ElixirでIoT」の新世界Hideki Takase
 
goで末尾再帰最適化は使えるか?
goで末尾再帰最適化は使えるか?goで末尾再帰最適化は使えるか?
goで末尾再帰最適化は使えるか?mori takuma
 
Region推論アルゴリズムの実装と動向
Region推論アルゴリズムの実装と動向Region推論アルゴリズムの実装と動向
Region推論アルゴリズムの実装と動向Takamasa Saichi
 

Was ist angesagt? (20)

Hubsカスタマイズ 行動ログ取得やバックエンドの話
Hubsカスタマイズ 行動ログ取得やバックエンドの話Hubsカスタマイズ 行動ログ取得やバックエンドの話
Hubsカスタマイズ 行動ログ取得やバックエンドの話
 
Android タブレットにLinuxを入れて色々と遊んでみよう 続編その2 Hacking of Android Tablet on Linux 2
Android タブレットにLinuxを入れて色々と遊んでみよう 続編その2 Hacking of Android Tablet on Linux 2Android タブレットにLinuxを入れて色々と遊んでみよう 続編その2 Hacking of Android Tablet on Linux 2
Android タブレットにLinuxを入れて色々と遊んでみよう 続編その2 Hacking of Android Tablet on Linux 2
 
ゴルフゲームでUnityの限界を突破する方法
ゴルフゲームでUnityの限界を突破する方法ゴルフゲームでUnityの限界を突破する方法
ゴルフゲームでUnityの限界を突破する方法
 
データベース技術の羅針盤
データベース技術の羅針盤データベース技術の羅針盤
データベース技術の羅針盤
 
楽しいShaderToy
楽しいShaderToy楽しいShaderToy
楽しいShaderToy
 
ChatGPT以後の時代をどう生きるか PWA Night vol.51
ChatGPT以後の時代をどう生きるか PWA Night vol.51ChatGPT以後の時代をどう生きるか PWA Night vol.51
ChatGPT以後の時代をどう生きるか PWA Night vol.51
 
Mayaカメラデータunityインストール
MayaカメラデータunityインストールMayaカメラデータunityインストール
Mayaカメラデータunityインストール
 
DNNコンパイラの歩みと最近の動向 〜TVMを中心に〜
DNNコンパイラの歩みと最近の動向 〜TVMを中心に〜DNNコンパイラの歩みと最近の動向 〜TVMを中心に〜
DNNコンパイラの歩みと最近の動向 〜TVMを中心に〜
 
MongoDBアプリの実例
MongoDBアプリの実例MongoDBアプリの実例
MongoDBアプリの実例
 
Developers Summit 2014 「Play2/Scalaでドメイン駆動設計を利用した大規模Webアプリケーションのスクラム開発の勘所」
Developers Summit 2014  「Play2/Scalaでドメイン駆動設計を利用した大規模Webアプリケーションのスクラム開発の勘所」Developers Summit 2014  「Play2/Scalaでドメイン駆動設計を利用した大規模Webアプリケーションのスクラム開発の勘所」
Developers Summit 2014 「Play2/Scalaでドメイン駆動設計を利用した大規模Webアプリケーションのスクラム開発の勘所」
 
さるでも分かりたい9dofで作るクォータニオン姿勢
さるでも分かりたい9dofで作るクォータニオン姿勢さるでも分かりたい9dofで作るクォータニオン姿勢
さるでも分かりたい9dofで作るクォータニオン姿勢
 
IT系エンジニアのためのプレゼンテーション入門
IT系エンジニアのためのプレゼンテーション入門IT系エンジニアのためのプレゼンテーション入門
IT系エンジニアのためのプレゼンテーション入門
 
Unityで始めるバージョン管理 Git LFS 入門編
Unityで始めるバージョン管理 Git LFS 入門編Unityで始めるバージョン管理 Git LFS 入門編
Unityで始めるバージョン管理 Git LFS 入門編
 
そろそろ知っておきたい!!コンテナ技術と Dockerのキホン
そろそろ知っておきたい!!コンテナ技術とDockerのキホンそろそろ知っておきたい!!コンテナ技術とDockerのキホン
そろそろ知っておきたい!!コンテナ技術と Dockerのキホン
 
Unityは神,Unrealは現実
Unityは神,Unrealは現実Unityは神,Unrealは現実
Unityは神,Unrealは現実
 
こわくない Git
こわくない Gitこわくない Git
こわくない Git
 
マネジメントレスのススメ - VPoE-Meetup by manaboo
マネジメントレスのススメ - VPoE-Meetup by manabooマネジメントレスのススメ - VPoE-Meetup by manaboo
マネジメントレスのススメ - VPoE-Meetup by manaboo
 
Nervesが開拓する「ElixirでIoT」の新世界
Nervesが開拓する「ElixirでIoT」の新世界Nervesが開拓する「ElixirでIoT」の新世界
Nervesが開拓する「ElixirでIoT」の新世界
 
goで末尾再帰最適化は使えるか?
goで末尾再帰最適化は使えるか?goで末尾再帰最適化は使えるか?
goで末尾再帰最適化は使えるか?
 
Region推論アルゴリズムの実装と動向
Region推論アルゴリズムの実装と動向Region推論アルゴリズムの実装と動向
Region推論アルゴリズムの実装と動向
 

Ähnlich wie 一歩進んだ Views の使い方

Webform の活用
Webform の活用Webform の活用
Webform の活用matcha_dev
 
実践に向けたドメイン駆動設計のエッセンス
実践に向けたドメイン駆動設計のエッセンス実践に向けたドメイン駆動設計のエッセンス
実践に向けたドメイン駆動設計のエッセンスGuildWorks
 
「Agileごっこ」で終わらせないために(仮)
「Agileごっこ」で終わらせないために(仮) 「Agileごっこ」で終わらせないために(仮)
「Agileごっこ」で終わらせないために(仮) Taku Yajima
 
DrupalとMySQL
DrupalとMySQLDrupalとMySQL
DrupalとMySQLyoyamasaki
 
sukusuku-scrum introduction
sukusuku-scrum introductionsukusuku-scrum introduction
sukusuku-scrum introductionNao Yamamoto
 
ディストリビューションを読む!ダイジェスト版
ディストリビューションを読む!ダイジェスト版ディストリビューションを読む!ダイジェスト版
ディストリビューションを読む!ダイジェスト版Tomotsugu Kaneko
 
What's Drupal & Drupal as a Employee App Platform
What's Drupal & Drupal as a Employee App PlatformWhat's Drupal & Drupal as a Employee App Platform
What's Drupal & Drupal as a Employee App Platform惠 紀野
 
WP-CFMではじめるWordPress構成管理
WP-CFMではじめるWordPress構成管理WP-CFMではじめるWordPress構成管理
WP-CFMではじめるWordPress構成管理Tomotsugu Kaneko
 
Drupal on ibm_cloud_20160630
Drupal on ibm_cloud_20160630Drupal on ibm_cloud_20160630
Drupal on ibm_cloud_20160630Yasushi Osonoi
 
20180710 techplay
20180710 techplay20180710 techplay
20180710 techplayyucoss
 
Pivotal Trackerでアジャイルなプロジェクト管理
Pivotal Trackerでアジャイルなプロジェクト管理Pivotal Trackerでアジャイルなプロジェクト管理
Pivotal Trackerでアジャイルなプロジェクト管理You&I
 
ドメイン駆動設計勉強会発表
ドメイン駆動設計勉強会発表ドメイン駆動設計勉強会発表
ドメイン駆動設計勉強会発表shingo suzuki
 
20120927 findjob4 dev_ops
20120927 findjob4 dev_ops20120927 findjob4 dev_ops
20120927 findjob4 dev_opsume3_
 
確認・検討にちょっと役立つプラグイン
確認・検討にちょっと役立つプラグイン確認・検討にちょっと役立つプラグイン
確認・検討にちょっと役立つプラグインKawaji Masaki
 
アジャイル開発&TFS導入
アジャイル開発&TFS導入アジャイル開発&TFS導入
アジャイル開発&TFS導入You&I
 
[141004] cedec 2014 참관기 & 강연 리뷰 #1
[141004] cedec 2014 참관기 & 강연 리뷰 #1[141004] cedec 2014 참관기 & 강연 리뷰 #1
[141004] cedec 2014 참관기 & 강연 리뷰 #1MinGeun Park
 
デザイナー・コーダーのための黒い画面入門
デザイナー・コーダーのための黒い画面入門デザイナー・コーダーのための黒い画面入門
デザイナー・コーダーのための黒い画面入門webcampusschoo
 
デザイナー・コーダーのための黒い画面入門 先生:和田 修一
デザイナー・コーダーのための黒い画面入門 先生:和田 修一デザイナー・コーダーのための黒い画面入門 先生:和田 修一
デザイナー・コーダーのための黒い画面入門 先生:和田 修一schoowebcampus
 
アジャイルオフショア開発モデル
アジャイルオフショア開発モデルアジャイルオフショア開発モデル
アジャイルオフショア開発モデルArata Fujimura
 

Ähnlich wie 一歩進んだ Views の使い方 (20)

Webform の活用
Webform の活用Webform の活用
Webform の活用
 
実践に向けたドメイン駆動設計のエッセンス
実践に向けたドメイン駆動設計のエッセンス実践に向けたドメイン駆動設計のエッセンス
実践に向けたドメイン駆動設計のエッセンス
 
「Agileごっこ」で終わらせないために(仮)
「Agileごっこ」で終わらせないために(仮) 「Agileごっこ」で終わらせないために(仮)
「Agileごっこ」で終わらせないために(仮)
 
DrupalとMySQL
DrupalとMySQLDrupalとMySQL
DrupalとMySQL
 
sukusuku-scrum introduction
sukusuku-scrum introductionsukusuku-scrum introduction
sukusuku-scrum introduction
 
Modeling Workshop
Modeling WorkshopModeling Workshop
Modeling Workshop
 
ディストリビューションを読む!ダイジェスト版
ディストリビューションを読む!ダイジェスト版ディストリビューションを読む!ダイジェスト版
ディストリビューションを読む!ダイジェスト版
 
What's Drupal & Drupal as a Employee App Platform
What's Drupal & Drupal as a Employee App PlatformWhat's Drupal & Drupal as a Employee App Platform
What's Drupal & Drupal as a Employee App Platform
 
WP-CFMではじめるWordPress構成管理
WP-CFMではじめるWordPress構成管理WP-CFMではじめるWordPress構成管理
WP-CFMではじめるWordPress構成管理
 
Drupal on ibm_cloud_20160630
Drupal on ibm_cloud_20160630Drupal on ibm_cloud_20160630
Drupal on ibm_cloud_20160630
 
20180710 techplay
20180710 techplay20180710 techplay
20180710 techplay
 
Pivotal Trackerでアジャイルなプロジェクト管理
Pivotal Trackerでアジャイルなプロジェクト管理Pivotal Trackerでアジャイルなプロジェクト管理
Pivotal Trackerでアジャイルなプロジェクト管理
 
ドメイン駆動設計勉強会発表
ドメイン駆動設計勉強会発表ドメイン駆動設計勉強会発表
ドメイン駆動設計勉強会発表
 
20120927 findjob4 dev_ops
20120927 findjob4 dev_ops20120927 findjob4 dev_ops
20120927 findjob4 dev_ops
 
確認・検討にちょっと役立つプラグイン
確認・検討にちょっと役立つプラグイン確認・検討にちょっと役立つプラグイン
確認・検討にちょっと役立つプラグイン
 
アジャイル開発&TFS導入
アジャイル開発&TFS導入アジャイル開発&TFS導入
アジャイル開発&TFS導入
 
[141004] cedec 2014 참관기 & 강연 리뷰 #1
[141004] cedec 2014 참관기 & 강연 리뷰 #1[141004] cedec 2014 참관기 & 강연 리뷰 #1
[141004] cedec 2014 참관기 & 강연 리뷰 #1
 
デザイナー・コーダーのための黒い画面入門
デザイナー・コーダーのための黒い画面入門デザイナー・コーダーのための黒い画面入門
デザイナー・コーダーのための黒い画面入門
 
デザイナー・コーダーのための黒い画面入門 先生:和田 修一
デザイナー・コーダーのための黒い画面入門 先生:和田 修一デザイナー・コーダーのための黒い画面入門 先生:和田 修一
デザイナー・コーダーのための黒い画面入門 先生:和田 修一
 
アジャイルオフショア開発モデル
アジャイルオフショア開発モデルアジャイルオフショア開発モデル
アジャイルオフショア開発モデル
 

一歩進んだ Views の使い方