0

これは私の最初の投稿であり、私は WordPress にかなり慣れていないので、愚かな質問をするのは簡単にしてください.

現在、私は Masonry http://masonry.desandro.com/を、WordPress に付属している標準の Twenty Eleven テーマに基づいた子テーマにインストールしようとしています。

私は約 20 の異なるチュートリアルの指示に従いましたが、なぜそれが機能しないのか見当がつきません。私は特に、開発プロジェクトhttp://www.ct-social.com/ctsdev/aff/our-trips/で動作するようにしようとしています

私を正しい方向に導くことができるアドバイス。誰かが実際に私が間違っていることを教えてくれるかもしれません。

2012 年 11 月 30 日更新スクリプトを次のように変更しました。

<script type="text/javascript">
jQuery(document).ready(function($){
  var $container = $('.container');
  $container.imagesLoaded(function(){
    $container.masonry({
      itemSelector : '.featured',
      singleMode:true
    });
  });
});
</script>

html は次のように構成されています。

<div class="container">
  <div class="featured">
      Stuff inside
  </div>
</div>

まだ運がありません。何か案は?

4

2 に答える 2

0

これを使用しています

var $container = $('#container');
  $container.imagesLoaded(function(){
    $container.masonry({
      itemSelector : '.item',
      columnWidth : 240
    });
  });

$('#container')あなたの「タイル」はすべてコンテナをIDとして使用し、 1つの要素しか見つからないことを期待しているため、これは失敗します。同じページに同じ ID を持つ複数の要素を配置しないでください。

Masonry チュートリアルのサンプル マークアップを見ると、

<div id="container">
  <div class="item">...</div>
  <div class="item">...</div>
  <div class="item">...</div>
  ...
</div>

id コンテナを持つ 1 つの div があり、各アイテムには同じクラスがあります。

すべてのアイテムを id "container" の div 内に配置し、"featured" クラスを Masonry にタイル表示するすべての要素に追加する必要があります。

于 2012-11-30T01:40:57.447 に答える
0

私は自分の問題を見つけ、問題を解決することができました。

Jquery をエンキューする代わりに、functions.php ファイルの下部で実行しました。

wp_enqueue_script('jquery');
wp_register_script('jquery_masonry', get_template_directory_uri().'/js/jquery.masonry.min.js', array('jquery'), '2.0.110526' );
wp_enqueue_script('jquery_masonry');

Enrico さんが言及した変更点と、BOOM! 石積みは現在機能しています。助けていただきありがとうございます。助けがなければ、私はまだ頭を岩にぶつけていたでしょう。

于 2012-11-30T17:54:13.927 に答える