IE8で画像ユニットの表示に問題が発見されました
IE8で画像ユニットに問題が発見されました。
IE8の画像ユニットである設定になると、画像幅がおかしくなり問題が発見されています。
不具合を起こす条件
- コンフィグ > 編集設定のイメージサイズ選択肢のパーセント指定をしていない
- 画像ユニットが左か右にフロートされている
- キャプションが設定されている
上記3つの条件が全て当てはまる場合、以下の画像のように画像の幅がおかしくなります。
IE8の画像ユニットである設定になると、画像幅がおかしくなり問題が発見されています。
上記3つの条件が全て当てはまる場合、以下の画像のように画像の幅がおかしくなります。
a-blog cms では標準でフォーム機能も搭載しております。お問い合わせにフォームなどで利用されています。機能としては、以下のようなものが上げられます。
フォームについても、モジュールとして提供しております。フォームの基本ステップとしては、新規・修正・確認・完了の4つのステップに分かれており、このステップを増やす事で複数ステップのフォームを用意できる事になります。
<!-- BEGIN_MODULE Form --> <!-- BEGIN step--> <!-- 新規 --> <!--#include file="/include/form/input.html"--> <!-- END step --> <!-- BEGIN step#reapply --> <!-- 修正 --> <!--#include file="/include/form/update.html"--> <!-- END step#reapply --> <!-- BEGIN step#confirm --> <!-- 確認 --> <!--#include file="/include/form/confirm.html"--> <!-- END step#confirm --> <!-- BEGIN step#result --> <!-- 完了 --> <!--#include file="/include/form/result.html"--> <!-- END step#result --> <!-- END_MODULE Form -->
入力フォームは、基本的にカスタムフィールドと同じ書き方で増やしていく事ができます。(HTMLのみで追加可能)
<input type="text" name="address" value="" /> <input type="hidden" name="field[]" value="address" /> <input type="hidden" name="address:validator#required" /> <!-- 必須項目 -->
フォーム > フォーム管理 の[変更]ボタンを押すとフォームを管理するページに移動します。こちらに、フォームIDを設定し、そのフォームIDをテンプレート上に設定する事で、データベース上にフォームの入力情報を保存し、CSVダウンロードを可能にしています。また、メールのテンプレートの設定や、From, To等の設定も管理ページ上で設定します。
CMS を活用して多言語サイトを作る際には、いくつかの方法があります。 ここでは、Google Translate APIを使って、多言語を同一コンテンツで管理する方法について紹介します。
今回のハンズオンではエイリアス機能と Google Translate APIを使って言語によってコンテンツ部分の表示を出し分けてみましょう。
まずは Google Translate API を使用するために以下の2つのステップが必要になります。
まずは、Google API Console にアクセスしてログインしてください。ログイン後、任意の名前でプロジェクトを作成します。 上の画像のように 1, 2 の手順でプロジェクトを新規作成できます。
左上のセレクトメニューをクリックし、先ほど作成したプロジェクトを選択します。
次は、サブカラムより「ライブラリ」という項目をクリックし、API ライブラリのページに移動します。そのページにて、Google Cloud Translation APIという項目を検索して有効化してください。
最後に「認証情報」をクリックして認証情報の設定画面に移動します。そこで新たに API key を作成します。今回はキーの制限は「なし」でも大丈夫です。ただしセキュリティ上、「IP アドレス」を指定し、アクセスできるIPアドレスを制限しておくことをオススメします。
この時発行される API key を覚えておきましょう。
管理画面 > コンフィグ > プロパティ設定 にて先ほど覚えておいたAPI Keyを入力します。これで下準備は完了です。
サイトの表示速度は(ごくわずかの効果かもしれませんが)SEOの観点からみても重要です。
a-blog cmsではキャッシュ機能を使うことで、サーバーキャッシュを作ることができます。アクセスがある度に動的にhtmlファイルを生成するところを、キャッシュしておくことで高速化しています。
キャッシュ機能を有効にしている場合、サイバーキャッシュによる高速化の他に、htmlファイルはgzip圧縮されています。これはブラウザにある開発者ツールなどを使ってそのページのレスポンスヘッダーを確認することで確認ができます。
下記のように表示されていましたらgzip圧縮されています。
フォームを設置するときフォームIDをテンプレートとフォーム管理画面に設定しています。フォームIDがあることでフォームの管理画面に送信データをデータベースに蓄積したり、メールのテンプレートやメールアドレスを指定することができます。
フォームの各ステップにフォームIDを記述します。IDの英数字で指定してください。記述方法は以下のような記述になります。
<input type="hidden" name="id" value="(フォームID)" />
例えば、フォームIDが contactForm のときは以下のように記述します。
<!-- BEGIN_MODULE Form --> <!-- BEGIN step--> <!-- 新規 --> <!--#include file="/include/form/insert.html"--> <input type="hidden" name="id" value="contactForm" /> <!-- END step --> <!-- BEGIN step#reapply --> <!-- 修正 --> <!--#include file="/include/form/update.html"--> <input type="hidden" name="id" value="contactForm" /> <!-- END step#reapply --> <!-- BEGIN step#confirm --> <!-- 確認 --> <!--#include file="/include/form/confirm.html"--> <input type="hidden" name="id" value="contactForm" /> <!-- END step#confirm --> <!-- BEGIN step#result --> <!-- 完了 --> <!--#include file="/include/form/result.html"--> <input type="hidden" name="id" value="contactForm" /> <!-- END step#result --> <!-- END_MODULE Form -->
管理画面 > フォームの [フォームIDを作成]ボタンを押してフォームIDを作成します。フォーム管理ではフォームの送信データのログを閲覧したり、メールアドレスやテンプレートを指定ができます。
フォームID画面ではメールのテンプレートや管理者のメールアドレスを指定することができます。
メールのテンプレートはフォームのテンプレートが置いてあるテーマフォルダに置いてください。 例えば メールテンプレートが /themes/site2015/contact/form/subject.txt に置いてあった場合のパスは /contact/form/subject.txt になります。
HTMLメールの本文のテンプレートがない場合は、テキストメールとして送信されます。HTMLメールとして送りたい場合は、テキストとHTML両方のテンプレートを指定ください。
以下のようなメールアドレスを指定する箇所があります。
最初にAdminがつく設定が管理者宛の設定で、つかないものが、自動返信の一般宛の設定になります。 これらの値は、ここでの設定以外にフォームのテンプレートで指定ができます。
通常は、Toにはお問い合わせした人に送信するので、毎回変わりますので、テンプレートで動的に設定します。 Fromは管理者のメールアドレスを設定すればよいでしょう。
逆に管理者宛のAdminToは、管理者のメールアドレスを固定で設定し、Fromを動的にテンプレートで指定します。