§(小説A)表紙画面§

この小説機能は、旧助け合い掲示板の『全小説共通の名前変換について(http://bbs.alicex.jp/support/133/)』スレ用に作成したものです。
(小説A)名前変換フォームへ

もしくは

(総合)名前変換フォームへ
▼小説Aの名前変換結果
#(小説A)名前変換1#


 
(default:小説Aの名前変換1)
▼普通のテキストリンク▼
(小説A)表紙画面へ(総合トップ)表紙画面へ
▼小説Aのナマエを総合トップに反映する▼

「共通の名前変換」を使う意味

そもそも何故、一つの名前変換フォームによって複数小説共通の名前変換を行いたいという話が出るのか。
「複数の小説機能がある場合、読者は目当ての小説ページへ行く度に名前変換を行うことになる。一括で名前変換できたらその手間を省くことができるはずだ」……つまり、読者がサイト内をスムーズに移動でき、ストレス無く、小説を読むという行為にまで行き着けるようにしたい、というのが最大の目的です。
この理念をコアにして、それっぽいものを作るぞ! というのが今回のデモページです。なので以下のことを念頭に置いて作ります。
(1)「目的の小説を読む」という段階に至るまでのステップをなるべく減らす
┗極力、名前変換を実行後すぐ目的の小説本文ページに辿り着けるようにする。3ステップ以内に収める。《総合トップで名前変換個別小説表紙(目次)本文》

(2)読者が迷子にならないよう、サイト内どこのページからでもサイトトップへスムーズに移動・または遡行できるようにする
┗《個別小説→総合トップ→サイトトップ》の道筋くらいはあった方が親切。
というより……後述しますが、このデモページの手法では《個別小説→総合トップ》はほぼ必須です。
で、一括変換モドキ影響下にある個別小説機能の構造は、以下が個人的なお勧めです。
●個別小説ページ内にも、その小説機能独自の名前変換フォームを設置する。
(※一括変換モドキに使う《総合のフォーム》ではなく、その小説本来のフォーム)

●個別小説ページ内に、「総合トップへ戻る」ボタンを設置しておく。そのボタンを押して総合トップへ戻れば、《個別小説内で設定したナマエ》が総合トップに《共通のナマエ》として上書きされるようにする(→詳細

個別小説機能内にも名前変換フォームを置くべき理由

全小説の一括名前変換(モドキ)フォームを作ったとしても、個々の小説機能内にもまた名前変換フォームを設置すべきだと思います。
何故かというと、すべての読者が《総合トップ→小説A》という順路でアクセスするとは限らないから、です。

どういう状況が考えられるかというと、
●小説Aのトップページをブクマしているので、「総合トップ」を通らない
●小説Aの閲覧中に一旦ブラウザを閉じた。次ブラウザを起動したとき、前回開いていたページ(この場合「小説A」)を表示する設定になっていた
……etc.です。「読者が総合トップを経ず、個別小説機能に直接アクセスする状況」は色々と考えられます。

なので、読者がいきなり小説Aを開いたとしても名前変換を行えるよう、名前変換フォーム(あるいは名前変換フォームへのリンク)を必ず設置すべきだと思います。

“どの”名前変換フォームを設置するか

3通り検討してみます。
※すべて、「小説A内のページに設置する」前提の話です。
(a)「小説A」用の名前変換フォームを設置
(b-1)「総合トップ」用の名前変換フォームを設置
(b-2)「総合トップ」名前変換画面へのリンクを設置
私の結論から言うと、お勧めは(a)「小説A」用の名前変換フォームを設置です。
先に、何故(b)を勧めないのかの理由を説明します。

読者を「総合トップ」に戻らせるのは不親切では?

(b)の方法だと、変換後に必ず「総合トップページ」へ戻る羽目になります。
読者は「小説Aを読もうとして名前変換をしたのに、何故か『総合トップ』へ戻らされる」のです。
これだと、小説A内に名前変換フォームを置いている意義が薄れるような気がします……。
小説Aの名前変換画面に、(a)と(b-1)を検証するためのフォームを設置しています。
(b-2)は(総合)名前変換画面へというふうに、総合トップ小説機能へのリンクを貼る、という形式です(このページトップにも貼ってます)。

「(b-1)の総合フォームは、名前変換画面じゃなくて小説A表紙画面(このページ)に置けば良いんじゃ?」と思われるかもしれません。もちろん、できます。
無駄にページ移動のステップを増やしたくなければ、↓のように小説表紙や目次に貼った方がいいかと思います。
総合トップの名前変換フォーム

総合の名前変換(共通のナマエ[1])


 
ただいずれにせよ、変換後の戻り先はどう足掻いても「総合トップページ」にするしかありません。
読者には「小説A内で名前変換→総合トップに戻らされる→また小説Aへアクセスする」というステップを踏んで頂かなければなりません。総合トップページを経ることには変わりないのです……。
ステップ数は、(b-1)の方が1回分(総合名前変換画面への移動分)だけ少ないです、一応。
(b-2)にする意味はせいぜい、「読者に『この《総合トップ》に置いてる総合名前変換フォームじゃないと、全小説共通の名前変換はできないんですよ』と思わせることができる」……とかそのくらいでしょうか……。

(a)の利点

小説Aの名前変換フォームですので、変換後の戻り先を「小説Aのページ(表紙や目次など)」に設定できます。
読者が名前変換後、すぐ小説Aを読み始められることが理想です。
(a)はその点をクリアできます。

(a)の欠点

小説Aの名前変換フォームですから当然、変換されるのは《小説Aのナマエ》だけです。
総合トップへ名前変換結果が自動的に送信されるわけではない……すなわち、《共通のナマエ》が書き換わるわけではないのです。
どういうことが起こるかというと、
「小説Aで名前変換を行ったが、何かの理由で総合トップに戻ってきた→再度小説Aにアクセスすると、『さっき小説Aで名前変換したのに、ナマエが変換以前の状態に戻っている』」……という事態が想定されます。

総合トップに置いてある「小説A」へのリンクは、もちろん隠しフォームです。
小説A内で名前変換を行っても、総合トップのナマエは自動で変換などされません。つまり、《総合トップのナマエ》はデフォルト状態(あるいは小説Aで変更する前に設定した、《共通のナマエ》)です。
その状態のナマエが、小説A隠しフォームの“名前入力欄”に代入された状態で、再度送信されれば……当然《総合トップのナマエ》で《小説Aのナマエ》が上書きされてしまいます。

回避策

小説A内に、↓こういうものを設置するのも手です。
あえてボタンらしい見た目のままにしたのでお気づきかと思いますが、これは「トップへ戻る」リンクに見せかけた“隠しフォーム”です。
<form action="/サイトID/novel/総合トップ小説番号/" method="post">
<input type="hidden" name="DreamID[1]" value="#小説Aの名前変換1#">
<input type="submit" name="dream_name_set" value="総合トップへ戻る">
</form>
総合トップへ戻るついでに、小説Aで設定したナマエを「総合トップ」にも反映してもらう……ということです。
総合トップにナマエが反映されれば、読者が《総合トップ→個別小説機能》とアクセスしたときに、そのナマエが他の個別小説機能にも反映できる。すなわち、見た目上は「小説A」で設定したナマエが、《共通のナマエ》にも反映された……ようになる、というわけです。

まあ、読者が必ずしもこの“「トップへ戻る」に偽装した隠しフォーム”で総合トップに戻ってくれるわけではありませんが……。
「名前変換実行→小説本文を読む」までのステップ数が一番少なくなる(と期待できる)構造にはなると思います。
▼普通のテキストリンク▼
(小説A)表紙画面へ(総合トップ)表紙画面へ
↑top↑