私のクライアントは既存のバナーサイトのタイトルを持っていて、7年以上経った今、ページのバナーテキストの下にページタイトルが何であるかを引用する別の行が必要です。私は、テキスト行を追加するためにすべてのページにアクセスする必要がないように努めており、次の解決策を考え出しました。完璧ではありませんが(そうである必要はありません)、このアプローチで予期しない問題が発生しましたか?
<cfparam name="url.CurrentPage" default="">
<div id="wideheader">
<div id="wideheadermain">
<h1 id="title">
<div class="PageBannerText">Technology Lab
<span id="CurrentPage"><cfswitch expression="#url.CurrentPage#">
<cfcase value="Update">
Update Project Data
</cfcase>
<cfcase value="Tracker">
Project Tracker
</cfcase>
<cfcase value="ProjectLog">
Project Log
</cfcase>
<cfcase value="Portfolio">
Project Portfolio
</cfcase>
<cfcase value="Links">
Related Links
</cfcase>
<cfcase value="Coordinator">
Coordinator Space
</cfcase>
<cfcase value="Request">
Project Request
</cfcase>
<cfcase value="Viewer">
Project Tracker Read-Only
</cfcase>
<cfcase value="LabMgr">
Lab Manager
</cfcase>
<cfcase value="Architect">
Architect Module
</cfcase>
<cfdefaultcase>
#url.CurrentPage#
</cfdefaultcase>
</cfswitch> #cookie.CurrentPage#</span>
</div>
</div>
</div>
上記のコードをヘッダーページに追加してから、メインナビゲーションメニューに次のコードを追加して、サブページのタイトルを設定します。
<ul>
<li><a href="Proj/TrackerMenu.cfm?CurrentPage=Project Tracker">Project Tracker</a></li>
<li><a href="Proj/RequestCopyOrAdd.cfm?CurrentPage=Request a Project">Request a Project</a></li>
<li><a href="Proj/ViewerMenu.cfm?CurrentPage=Project Viewer">Project Viewer</a></li>
...
</ul>
これは完璧ではないことはわかっていますが、サイトの90〜95%をカバーすると思います。
私が持っていたもう1つのアイデアは、サブページのバナーテキストをスパンタグでラップしてIDを付け、jQUeryを使用してテキストを設定することでした。現在のURLを評価し、それに応じてサブページのバナーテキストを設定するルーチンを作成できます。
TIA