ラベル

Server (108) work (77) Idea (68) Car (31) PC (29) DAW (28) other (19) MakingWEBsite (18) 趣味 (18) health (13) CentOS (11) drupal (11) (9) android (4) スマホ (4) communication (3) drupal7 (3) hint (3) meno (3) モバイル (3) 歯医者 (3) 第二種電気工事士 (3) 英語 (3) PC Server (2) drupal8 (2) ms access (2) uwp C# (2) めし (2) 整備 (2) 音楽 (2) MIDI (1) diy (1) 会計 (1) 動画再生 (1) 生活 (1) 郵便 (1) 食べ物 (1)

2017年6月17日土曜日

drupal 8 物の置き場所リストを作る 片づけ

物が捨てられなくて、使わないものでいっぱいになっている。
使わないものは捨てて、きれいさっぱりになって、いつでも探し物がさっと探せる状態になりたい。

でも、一気にそれは無理だし、きれいさっぱりも、なればなったで面白くないような気もする。

とりあえず、今の散らかっている状態のままで、かったぱしから物とその置いてある場所を(できれば写真とともに)登録して、物のリストから一発で探したいものを探し出せるようにしたい。
適当なところにポーンと物を置いて、その場所を置き場所としてパソコンに登録しておけば、整理させている状態と同じだ。

登録して置けば、パソコン上で移動させてその通りに現物の移動をすればいいわけだし、散らかっているのはもちろん嫌だけど、自分で物のありかを把握できてない方がもっと嫌なわけで、それと、片づけるために置く場所にこだわるのもなんだか別な意味で効率悪そうだし。
 物を登録して、その後PC上で動かしながら、いい場所を探していくのが楽しいかもなぁ。と思った。


で、簡単に作ってみる。
MS Accessが簡単で柔軟。
でも、スマホで撮った写真をそのままアップロードさせたい。
そうなるとサーバーに置いてapacheなどから使おうとすると、PHPとかJAVAとかになるのか。
ぱぱっと作りたいということで、drupal8 にした。

作り方
タクソノミーにボキャブラリー「片づけ」を作る。
片づけの中のターム、
家-
   -A部屋
    -机
     -A引出し
     -B引出し
    -戸棚
   -B部屋
    -本棚
などと作る。

「物の名前」というコンテンツタイプを作って、そこにタクソノミのタームをあてはめられるフィールドを作る。
フィールドは一つのフィールドと無限に作れるフィールドの二つを作る。
一つは現在物が置いてある場所。もう一つは以前に置いてあった場所を入力できるようにしておく。

Taxonomy menuモジュールを入れて左サイドメニューにタクソノミー「片づけ」を表示させる。
設定
Home  Administration  Structure  Taxonomy menu Configuration
で、MenuはTools、Parent menu linkは<Tools>
タクソノミーをviewsを使って表示させたかったのだけど、親ターム子タームまでならできる。けど、親ターム子ターム孫タームまでなると、うまく段差をつけて表示させることができない。(ちなみに親ターム子タームだけなら、viewsでコンテンツのフィールドのターム毎にグループ化した後で、リレーションシップで、Parent termを選択。あとは、表示させるところをいろいろいじると、どうにかなる。)


テーマの選択。
drupalのオリジナルテーマは、いろいろな機能がついていて自分のやりたいことに合わないと少し使いにくい。

単純な構造だから、自分で一から作ってもそんなに大変ではないと思う。
ただ、Bootstrapを使ったら、シンプルで結構よかったので、一旦それに決めた。
が、Taxonomy menuの表示がうまくいかない、で、Adaptive Themesを使ったらうまくいったので、Adaptive Themesを使うことにした。
(Adaptive Themesは表示に時間がかかるかも。シンプルなテーマを自分で作ったほうがいいのか。)

配置
部屋ごとに置いてある物を探す
  taxonomy menuを使って左サイドメニューに表示させる。
物のリストから、物を探す。
  右側のサイドメニューに「物の名前」コンテンツのリストをviewsを使って表示させる。
それぞれの結果が真ん中のメインコンテンツに表示される。

修正点
Adaptive Themesの問題点。
メインコンテンツにviewsで作ったブロックを入れたら、下に、ユーザー名とそのユーザーの登録期間が大きく表示される。これは邪魔だから取り除きたい。
その方法
\themes\adaptivetheme\at_core\templates\user\user.html.twig

user__title がユーザー名
content がユーザー登録期間
を表しているので、その表示関連部分をコメント化。


admin/config/system/site-information
で、site nameを書き換えても表示が自分で書き換えたものにならずに"drupal"と表示されてしまう。これは、どのテーマを使っても同じ。
解決方法は
\sites\default\settings.php

 $config['system.site']['name'] = 'My Drupal site';
を有効(#を取って)にして、My Drupal siteを自分のサイト名に変更する。
変更後にサイト上で文字化けする時はファイルのテキストがUTF-8になっているかどうかの確認。

drupalのフォーラムではbugだ。と言っている人もいる。
これに対して
drupalドキュメントの
10.1. Concept: User Interface, Configuration, and Content translation
から、10.5まで読めと言っている人もいる。(自分は面倒だから読んでいない)

また、このサイトネームを修正するのではなくて削除したいときは、
Adaptive Themesの場合
\themes\adaptivetheme\at_core\templates\block\block--system-branding-block.html.twig

            {%- if site_name -%}
              <strong class="site-branding__name"><a href="{{ path('<front>') }}" title="{{ 'Home'|t }}" itemprop="url" rel="home" class="site-branding__name-link">{{ site_name }}</a></strong>
            {%- endif -%}
ここの部分をコメント化すればいい。
(site_nameがdrupalの中でサイトネームの変数になっている。)

右下の"Design by Adaptivethemes.com"を取り除く。
テーマの設定でExtensions> Markup Overrides の "Show attribution message"のチェックを外す。


0 件のコメント:

コメントを投稿