適用 (対象)
設定を保存するためにサーバーサイドのスクリプトを用いて生成されたコンテンツ。
(この達成方法は、解説書から参照されていない。)
解説
この達成方法の目的は、ウェブページの適合している代替版の設定を利用者が選択できるメカニズムを提供することである。
利用者が適合している代替版を見ることができるような設定を提供するにはいくつかの方法が可能である。一般的な方法としては、ウェブサーバーがページを修正する、又は利用者を代替版にリダイレクトするのに使うセッション又は永続的なクッキーを設定するサーバーサイドのプロセスのトリガーとなるリンクを提供する方法がある。他の方法には、利用者がウェブページ又はサービスにアクセスする際にサインインするシステムへのログイン情報の一部として利用者ごとの選択肢を提供する方法がある。
不適合なページで提供されるメカニズムは、代替版を必要とする利用者が、それを探して利用するためにアクセシブルである必要がある。そのメカニズム自体は宣言しているアクセシビリティレベルに適合しているべきである。
事例
例 1: 利用者設定を保存するためにセッション又は永続的なクッキーを設定する
あるウェブサイトは、サイト内のページには「設定」ページへのリンクを提供している。このページには、サイトの代替版を見るためのオプションがある。好みによってページのさまざまな見方があるかもしれないし、利用者はサイトの完全な代替版を見たいかもしれない。その設定はサイト上で動画が含まれる部分ではキャプションを表示するものかもしれない。また、主となるサイトが、代替版からしかわからないアクセシビリティ適合についての問題を含んでいるために提供されているのかもしれない。
あるウェブページの制作者はクッキーを使って設定を扱うことがある。それは、PHP のようなサーバーサイドのスクリプトを用いて扱われるかもしれない。
設定のページは例えば次のように提供される:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>Site Preferences</title> </head> <body> <h1>Site Preferences</h1> <form id="form1" name="site_prefs" method="post" action="pref.php"> <fieldset> <legend>Which version of the site do you want to view?</legend> <input type="radio" name="site_pref" id="site_pref_reg" value="reg" /> <label for="site_pref_reg">Main version of site</label> <input type="radio" name="site_pref" id="site_pref_axx" value="axx" /> <label for="site_pref_axx">Accessibility-conforming version</label> </fieldset> </form> </body> </html>
フォームは処理のためにpref.phpのファイルへと送信される。クッキーが設定され、この単純な例では、利用者のブラウザはサイトのトップページへと移動する。
pref.php:
<?php if(isset($site_pref)) { setcookie("site_pref",$site_pref, time() + (86400 * 30)); //set for 30 days header("location: http://www.example.com"); //redirects to home page } ?>
トップページは利用者の設定を実装するコードから始まる。
index.php:
<? if(isset($site_pref)) { if($site_pref="axx") { header("location: ./accessible/index.php"); } ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> ...
ログインを必要とするシステムでは、設定は利用者のデータベース記録に保存され、利用者が見るページを生成するサーバーサイドのスクリプトによって参照される。
参考リソース
参考リソースは、あくまでも情報提供のみが目的であり、推薦などを意味するものではない。
検証
手順
- そのサイトのページの表示方法についての設定を変更する。
- 各不適合なページから、設定そのもの、又は設定できるページへのリンクにアクセスできることを確認する。
- ウェブページが選択した設定に応じて表示されることを確認する。
- 設定が行われた時に、ウェブページが宣言通りに適合していることを確認する。
- 結果となるページが元のページの適合している代替版となっていることを確認する。
期待される結果
- #2 及び #3 の結果が真である。