中身を下のようにしたところ、それらしい動作をします。これだと単に追加であって、「削除して」「差し替え」ではないだろうと思います。書いてから気づいたのですが、オブジェクトで登録してると削除するのは物凄く面倒なことしないと出来ないですね。今回の場合は削除するぐらいなら処理が走らないようにした方が簡単かな。実行されないようです。ここが微妙なところなんですよね。デリゲートでは実行順序をコントロールすることが可能ですが、このコードではコントロールしてないので、ThemeSelect::doChangeThemeが必ず後から実行される保証はありません。サイトプリロードとモジュールプリロードの違いで配列の登録順序は先になるので、先に実行されるとは思いますが・・・souhaltさんのコードは実際先に実行されますよね。1にするとメソッドdoChangeThemeではユーザオブジェクトが作成されていないので、postFilterでユーザデータに登録させてます。$_POST['xoops_theme_select']をunsetすることでThemeSelect::doChangeThemeのロジックをスキップさせています。<割と強引メソッドdoChangeTheme内でもDBに接続しているのでユーザオブジェクトを使わずにSQLを書いてしまえばdoChangeTheme内で完結させることも出来ます。(上のコードよりこっちの方がスマートかな)10って答えを出すのに引き算、足し算、割り算、掛け算どれを使っても10を導くことが出来るのと同じでプログラムも1つじゃないので面白いですよね。このコードだと不要な処理も走るので、souhaltさんのコードで十分かと思います。以降は削除されて表示されません。ページに表示されたと思います。いうものですか?htmlタグがいくつかそのまま書けるみたい(テーブルタグで絵描いたりして遊んでみた)なのでこのモジュールの仕様だと思います。フィールド変化せず)引用:書いてから気づいたのですが、オブジェクトで登録してると削除するのは物凄く面倒なことしないと出来ないですね。今回の場合は削除するぐらいなら処理が走らないようにした方が簡単かな。削除しようとしたのですが、うまくいきませんでした。1にするとメソッドdoChangeThemeではユーザオブジェクトが作成されていないので、postFilterでユーザデータに登録させてます。$_POST['xoops_theme_select']をunsetすることでThemeSelect::doChangeThemeのロジックをスキップさせています。明示化したコードということですね。引用:サイトプリロードとモジュールプリロードの違いで配列の登録順序は先になるので、先に実行されるとは思いますが・・・souhaltさんのコードは実際先に実行されますよね。引用:このコードだと不要な処理も走るので、souhaltさんのコードで十分かと思います。明示されない実行順序ですが、支障なく動作しているように見えます。コードを書いていただいたので、そちらの方を使用させていただこうかと思います。できるようです(テーマチェンジャーの「このテーマを常に使う」機能を含めて)。「モジュールごとにテーマを設定」に関しては、想定も確認もしておりません。アドバイスを戴いた皆様、どうもありがとうございました。---引用:htmlタグがいくつかそのまま書けるみたい(テーブルタグで絵描いたりして遊んでみた)なのでこのモジュールの仕様だと思います。文字参照で書くしかないようです。できるようです(テーマチェンジャーの「このテーマを常に使う」機能を含めて)。必要ないですよテーマ選択のブロックにこのテーマを常に使うってチェックボックスでも追加すれば、プリロードだけで可能です。必要ないですよテーマ選択のブロックにこのテーマを常に使うってチェックボックスでも追加すれば、プリロードだけで可能です。その点は分かってます。ボタンを追加すればできます。テーマチェンジャーの「テーマ選択」ブロックを使う場合も、実際はフォームの部分だけ使われるようなイメージだと思います。使うか、いずれにしても好みの問題の範囲かと。