LoginSignup
0
0

More than 5 years have passed since last update.

XCL2.2(XoopsX)のブロックコントローラのせいでデザイン崩れが出るので、jQueryを使って切り替えるようにしてみた。

Posted at

XCL2.2(XoopsX)を使っていて、便利だなと思う反面、ちょっと邪魔だなぁ〜と思うのが、管理権限がある場合に表示されている「各ブロックの右端に表示されるブロックコントローラ」

これ、わざわざ管理画面に移動しなくても、これをクリックするだけで直接そのブロックの編集・削除画面などに飛ぶことができるので、管理者にはとっても便利な機能なんですけど・・・

管理者としてログインした状態でサイトを見ていると、これがあるためにデザイン崩れというか、ゲスト状態で見るのとちょっと違う感じに表示されるので、何とかしたいなぁ〜って思ってました。

で、とりあえず、テーマに次の記述を追加することで、なんとか切り替えができるようにしてみました。(もちろん、プリロードで作ってもいいのでしょうけど)

次の記述をテーマのhead内の最後の方に追加

<head>
<{if $xoops_isadmin}>
<script>
  jQuery(document).ready(function(){
    jQuery("span.block_controller").css("display","none");
    jQuery("#b_con").click(function () {
      jQuery("span.block_controller").toggle();
    });
  });
</script>
<{/if}>
</head>

次の記述をテーマの適宜の場所に追加

<{if $xoops_isadmin}>
<a href="#" id="b_con">block controller</a>
<{/if}>

とか書くとリンクをクリックするとブロックコントローラの表示切り替えができるし

<{if $xoops_isadmin}>
<button id="b_con">block controller</button>
<{/if}>

とすると、ボタンで切り替えができるようになる。

ちなみに、上記のjQueryのコードでは、他のJSとのバッティングを避けるために、グローバルとして利用される$をjQueryに置き換えているけど、実は、最初の部分だけを変えたらあとはそれで包まれるので、あとは$でも良いらしい・・・でも、面倒なんで全部jQueryに置き換えていたりします。はい。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0