FAQブロックが作成するbIDと挙動について

2015年6月24日 at 20:28

FAQブロックをカスタマイズして、DCPもどきを作ろうとしています。
ある点でドハマリしているのですが、なんとか自分で解決できないか思案中…
その思案中で、気になる挙動を見つけました。

一旦FAQブロックを作成し、編集モードを抜けます。
FAQのエントリーを追加したり、編集したりするごとに、新しくbIDを取得して、btFaqEntriesに新しい行を作っていっています。
これは正しい挙動なのでしょうか? バージョン管理のためのものですか? となると、原則としてブロックは、編集するごとに新しいbIDを作っていくのでしょうか…?

タグ:

Re: FAQブロックが作成するbIDと挙動について

2015年6月24日 at 21:10
はい。

その挙動であっています。
というか、この挙動は concrete5.6 から変わっていません。

FAQ の controller.php の duplicate() を見ていただくとわかるように、ブロックを編集するたびに、新しい bID が作られるので、そのたびに btFaqEntries テーブルにもそのレコードが複製されます。

これで、concrete5 はバージョン管理をしています。
 

Re: Re: FAQブロックが作成するbIDと挙動について

2015年6月25日 at 15:24
ありがとうございます。

なるほど、となると、bIDをHTMLクラスに出力して、そのbIDでスタイルを定義する、というようなことは、してはいけないわけですね。

モーダルやアコーディオンのために、idにbIDを指定したことはあったのですが、この値は編集ごとに変化すると考えておかないとハマりそうだったので、気をつけようと思います。