6. 詳細ページにエントリーを表示・登録を可能にする

トップページの一覧からリンクをクリックするとページは出てくるかと思いますが、どこのお知らせをクリックしても同じものが表示されます。各エントリーが別のものが表示でき、新規登録もできるようにする事にします。

詳細ページ

最初に、entry.html にも「4. テーマを作る際に最低限必要なタグを追記する」の作業が必要になります。

Entry_Body モジュールを設定

一覧ページのときにも紹介されていた Entry_Body の スニペットentry.html の <main> 〜 </main> に貼り付けます。スニペットをそのまま貼ると、違う部分もありますので、まったく同じレイアウトにしようとすると見比べながら調整が必要になってくるかと思います。

/themes/simple2016/include/entry/bodyNoDate.html か body.html を参考にすると、サンプルと同じ状態になります。

Entry_Body のスニペットの中には、以下のファイルをインクルードしています。これらがないと機能が動作しませんので注意が必要です。

ファイル 内容 表示
/admin/entry/revision-info.html バージョン管理 管理
/admin/entry/title.html 管理ページのタイトル表示用 管理
/include/unit.html ユニットの内容を表示 一般
/include/form/unit.html 動的フォームの表示 一般
/admin/entry/edit.html エントリー追加・更新用フォーム表示 管理
/admin/entry/add.html ユニット追加フォーム表示 管理
/admin/form2/edit.html 動的フォーム管理用フォーム表示 管理
/admin/entry/action.html 変更・追加ボタン表示 管理

Topic_Path モジュールを設定

Webサイトの階層構造と現在地の関係をわかりやすくするために、トピックパス ( パンくずリスト ) が用意されています。以下の部分を、Topicpath モジュールの スニペット を参考に変更します。

<ul>
    <li><a href="index.html">ホーム</a></li>
    <li><a href="list.html">一覧</a></li>
    <li class="stay"><a href="entry.html">詳細</a></li>
</ul>

トピックパスのキャプチャ

その後、管理ページ > モジュールID から「モジュールIDを作成」から作成します。

モジュールを Topicpath を選択し、id を topicpath とし、名前は「トピックパス」のように人が認識できるように名前をつけてください。また、テンプレートのモジュールにも id="topicpath" をつけてください。

<!-- BEGIN_MODULE Topicpath id="topicpath" --><!-- END_MODULE Topicpath -->

引数のところでは、カテゴリーID とエントリーID にチェックをつけてください。これがないと、モジュールにこのカテゴリーで、このエントリーだということを渡すことができません。

モジュールID トピックパス 条件設定

忘れがちなのが、階層の設定です。下層も含める設定をしておかないとサブカテゴリーのような深い階層になった時にカテゴリーが1つしか出ないというトラブルの原因になります。

モジュールID トピックパス 表示設定

表示設定では、全ての階層を表示できるように階層数を空に、起点の代替ラベルを HOME に設定しておきます。

Entry_List モジュールを設定

サブカラムに、同じカテゴリーのエントリーの一覧があります。以下の部分を、Entry_List モジュールの スニペット を参考に変更します。

<ul class="acms-list-group">
    <li class=""><a href="entry.html" class="acms-list-group-item">エントリー名1</a></li>
    <li class=""><a href="entry.html" class="acms-list-group-item">エントリー名2</a></li>
    <li class=""><a href="entry.html" class="acms-list-group-item">エントリー名3</a></li>
    <li class=""><a href="entry.html" class="acms-list-group-item">エントリー名4</a></li>
    <li class=""><a href="entry.html" class="acms-list-group-item">エントリー名5</a></li>
    <li class=""><a href="entry.html" class="acms-list-group-item">エントリー名6</a></li>
</ul>

その後、管理ページ > モジュールID から「モジュールIDを作成」から作成します。

モジュールを Entry_List を選択し、id を entry-list とし、名前は「サブカラム用エントリーリスト」のように人が認識できるように名前をつけてください。また、テンプレートのモジュールにも id="entry-list" をつけてください。

<!-- BEGIN_MODULE Entry_List id="entry-list" --><!-- END_MODULE Entry_List -->

モジュールID エントリーリスト

モジュールID の条件設定については、カテゴリーID のチェックボックスにチェックをつけてください。そうする事で、表示されているカテゴリーと同一のエントリーのみが表示されるようになります。

results matching ""

    No results matching ""