bootstrap導入について

2016年1月9日 at 12:08

皆様にお聞きしたいことがあります。

・使用サーバーはmamp
・使用PC mac マーベリックス
・使用concrete5 バージョン 5.7.5.3

concrete5にbootstrapをいれると管理画面がおかしくなります。
空のconcrete5にテスト的にbootstrap3をいれました。
http://getbootstrap.com/examples/starter-template/
上記が表示される内容にしています。
右上の管理画面のボタンをおすと右サイドバーがでてきたあとボタンが押せず戻れなくなります。左上のボタンも同様のようになります。

view.phpには
<?php Loader::element('system_errors', array('error' => $error));
php print $innerContent;
?>
にしています。(ここでは<?は全角文字にしています。)

header.phpには
<link href="<?php echo $this->getThemePath(); ?>/css/bootstrap.min.css" rel="stylesheet”>
にしています。
footer.phpには
<script src="h<?php echo $this->getThemePath(); ?>/js/jquery.min.js"></script>
<script src="<?php echo $this->getThemePath(); ?>/js/bootstrap.min.js"></script>
にしています。
おそらく問題になるpage_theme.phpには
<?php
namespace Application\Theme\test;
class PageTheme extends \Concrete\Core\Page\Theme\Theme {
protected $pThemeGridFrameworkHandle = 'bootstrap3';
public function getThemeName(){
return t('bootstrap');
}
public function getThemeDescription(){
return t('test');//
}

public function registerAssets() {

$this->requireAsset('javascript', 'jquery');
$this->requireAsset('javascript', 'bootstrap/*');
}
}

pt.1に画像添付してあります。
わかる方がおられれば教えていただけないでしょうか。
page_theme.phpの書き方もいっしょに詳しく教えていただければ幸いです。
どうぞ宜しくお願いいたします。

タグ:

Re: bootstrap導入について

2016年1月9日 at 17:33
取り急ぎ
page_theme.phpのregisterAssets()内での$this->requireAsset('javascript',jquery')
でjqueryを読み込みますので、footer.phpにjqueryの読み込みを書くと2重読み込みになり、エラーが発生します。
デバッグツールでみられると2回読み込まれているのがわかると思います。
すべてのソースコードを見ていませんが、footer.phpでの読み込みをjquery,bootstrap ともに削除すれば、問題は解決すると思います。

$this->requireAsset()で書かれた内容は自動的に<link ~>を吐き出してくれるので、footer.phpに書くとダブってしまいます。
 

Re: bootstrap導入について

2016年1月10日 at 4:08
返信ありがとうございます。
それですが、footer.phpの部分の消してやってみましたが、管理画面の現象はかわりませんでした。
もう少し詳しく伝えるため、すべてのphpのスクショを添付いたします。
これで教えていただけないでしょうか。
どうぞよろしくお願いいたします。
 

Re: bootstrap導入について

2016年1月10日 at 7:26
ひとつの疑わしい点として<div class="<?php echo $c->getPageWrapperClass()?>">がちゃんと閉じられていないとか?

footer.php内の<?php Loader::element('footer_required'); ?>の後にあるdivの閉じを前にしてみて下さい。

**********
<?php Loader::element('footer_required'); ?>
</div>
**********
これを・・・
**********
</div>
<?php Loader::element('footer_required'); ?>
**********
こう。

前に自分がハマったことがある症状と同じ気がします。
この場合、bootstrapとかは関係ないですね。
 

Re: Re: bootstrap導入について

2016年1月10日 at 10:03
返信ありがとうございます。

なおりました。
助かりました。
現在、制作しているサイトもなおりました。
本当にありがとうございます。

もうひとつお聞きしたいことがあります。
編集中はjqueryをとめるには、どこのファイルにどう書けばいいのでしょうか?

申し訳ありませんが、よろしくお願いします。
 

Re: bootstrap導入について

2016年1月10日 at 23:36
自己解決しました。

編集中はjqueryをとめるですが、その必要はないとのことでした。

ありがとうございました。