October CMSの並び替え画面で、取得するレコードを絞ったり、表示する内容を変更する

October CMSの並び替え画面で、取得するレコードを絞ったり、表示する内容を自由に変更できるようにするのに少し手こずったので、実装した方法をご紹介します。

環境

  • Laravel:5.5
  • October CMS:1.0

1. 並び替え画面の準備

まずは最低限、並び替え画面が使えるように準備をします。
詳しくは公式を参照してください。
https://octobercms.com/docs/backend/reorder

フォルダ構造

_reorder_toolbar.htm

config_reorder.yaml

reorder.htm

Controller.php

Model.php

2. 取得するレコードを絞る

ここまでで並び替え画面を使うことができるようになりました。
次は並び替え画面で取得するレコードを絞る方法です。

Controller.php

拡張メソッドの「reorderExtendQuery」を使います。

3. 表示する内容を変更する

先ほどの「reorderExtendQuery」で、SelectRawでCONCATなどを使ってカラムを結合したりすればいいんじゃないかと考えるかもしれませんが、結果として並び替え機能自体が動かなくなってしまったので別の方法を使用しました。

Model.php

afterFetchメソッドを追加

config_reorder.yaml

nameFromの値を変更

まとめ

以上がOctober CMSの並び替え画面で、取得するレコードを絞ったり、表示する内容を変更する方法でした。

afterFetchは今回の並び替え以外にも使えるテクニックになるはずなので、覚えていて損はないと思います。

 

システム開発のご相談はこちらからお気軽にお問合せください。


コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です