PHP

「page.tpl.php」内にアカウントのフィールドを表示する際のメモ。

2014.01.28 / Notes

Drupal7の「page.tpl.php」内に、追加で作成したアカウントのフィールドを表示する際のメモです。

上記では管理画面の「アカウントの設定 > フィールドの管理」ページにて、本名として「field_name」というフィールドを作成した場合です。

Drupal 7でテンプレート内にブロックを表示させる方法。

2013.08.24 / Labs

「node.tpl.php」などのテンプレートに直接ブロックを表示する方法はいくつかあります。
「サイト構築 > ブロック」で追加したカスタムブロックでは主に下記の3つの方法があります。

最初の「block_custom_block_get()」はブロックIDを引数に渡して、ブロックの情報を取得します。
2番目の「block_load()」はDrupal 7から導入された機能で、やや冗長になってしまい、あまり使いやすくはありません。
3番目の「module_invoke()」はモジュールとしてのblockとして情報を取得します。
2番目と3番目に関してはカスタムブロックのほかに、下記に記述するViewsなどのモジュールでも利用できます。

 

上記はViewsの場合ですが、モジュール名とブロックのデルタ名(test-block)を引数にとります。

 

デルタ名は「サイト構築 > ブロック」にアクセスして、該当するブロックの設定ページのアドレスから確認できます。

 

Viewsの場合「CONTEXTUAL FILTERS」で引数を与えたい場合には、次の「views_embed_view()」で可能です。

Viewsの場合であれば、この方法が最もシンプルで利便性が高いです。

Drupal 7でjQuery UIのCSSを変更する方法。

2013.05.02 / Notes

Drupal 7では標準でjQuery UIが搭載されていて、一部のモジュールやオリジナルのテーマに利用することができます。
ただjQuery UIのテーマが基本デザインのものなので、サイトのデザインとマッチしないこともあります。
そのような場合には、オリジナルテーマ内の「template.php」に次のように記述することで、自由に変更することができます。

上記ではオリジナルテーマのディレクトリ内に、「ui」というディレクトリを作成して、ここにjQuery UIのテーマ一式を格納しています。
オリジナルのjQuery UIのテーマの作成には「ThemeRoller」の利用がベターです。

Drupal 7で「node.tpl.php」内に画像スタイルを指定して、画像を表示する方法。

2013.04.23 / Notes

通常はコンテンツタイプの表示の管理で設定した、画像スタイルをもとに「node.tpl.php」テンプレート内で画像を表示します。

この場合では複数毎の画像があったときでも、同じ画像スタイルで表示されます。

 

もし1番目の画像、2番目の画像で画像スタイルを変えたい場合には、次のような方法で実現できます。

1番目の画像($node->field_image[‘und’][0])に対しては、画像スタイル「large」、2番目の画像には「medium」を、それぞれ指定しています。

 

たたし、この方法ではrender()関数と違い、画像が無い場合にエラーを出してしまうので、次のように画像の有無をチェックした方が安全です。

PHPでデバイスの判定。

2013.04.19 / Notes

PHPでPC、スマートフォン、携帯のデバイスの判定するためのスクリプトです。