2012-01-01 20 views
2

私はgallery sortaをやって、複数のページに分割してjQueryでページを分けようとしています。誰かが似たようなことを試したことがありますか?それを設定するためのガイドラインを教えてください。このやウェブサイト上の類似したギャラリーのような(更新)投稿の1つの*ページ*からコンテンツを取得する方法は?

何か:http://hitfix.com/galleries/most-anticipated-tv-premieres-and-returns-of-2012

私はしかし、jQueryのなしで、類似した何かを作ることができた、と私はサイトは各ページのすべての時間をリロードしなければならないとき、ユーザーがイライラを知っています。

編集: は、私がここにフォローアップの質問を追加します:私は、ポスト内の単一のページの内容を取得するために使用することができますどのような機能

? 投稿を5ページに分割したいとします.3ページの内容を取得するにはどうすればよいですか?

答えて

0

slider/slideshowのプラグインがありますが、自分で作成したい場合は、リンク先のサイトのようなナビゲーションバーを設定して、数字のいずれかをクリックすると

HTML--

<ul id="navigation"> 
    <li><a href="#">1</a></li> 
    <li><a href="#">2</a></li> 
    <li><a href="#">3</a></li> 
    <li><a href="#">4</a></li> 
    <li><a href="#">5</a></li> 
    <li><a href="#">6</a></li> 
</ul> 
<div id="page"></div> 

CSS--

#navigation li { 
    display : inline-block; 

    /*Fix display:inline-block in IE7*/ 
    *display : inline; 
    zoom  : 1; 
} 
:所望の情報を出力するPHPスクリプトへのAJAX呼び出しここで

jQuery--

$(function() { 

    //cache the `#page` element as it will be needed later 
    var $page = $('#page'); 

    //bind a `click` event handler to all the `<li>` elements that are children of the `#navigation` ul element 
    $('#navigation').children().on('click', function (event) { 
     event.preventDefault(); 

     //you could display a loading animation/message here while the new content is being returned from the server 

     //when making the AJAX call you need to send some data to identify the "page" to output, I used the `id` key and set it's value to the index of the `<li>` element clicked in respect to all the other `<li>`s 
     $.get('path/to/server-side.php', { id : $(this).index() }, function (serverResponse) { 

      //now set the `#page` element's HTML to the response from the server 
      $page.html(serverResponse); 

      //if you played a loading animation/message you can hide it now 
     } 
    }); 
}); 

デモです:http://jsfiddle.net/jGujw/(私は、アレイ内の一部のサーバーの応答を格納して、私はAJAX機能をテストすることができなかったことに注意してください)

つかんでページ付けすることも可能ですAJAXリクエストで同じページを何度も繰り返し、DOM内に目的の要素だけを追加するようにserverReponseを解析します。

.on()は、jQuery 1.7では新しく、旧バージョンを使用している場合は.bind()と同じです。

+0

Thans mate。その詳細な答えに私は本当にうれしく驚きました。私はおそらく私の質問をあまりにも広範に尋ねた、私はWordpress側でそれを行う方法をいくつかのguidlinesを求めていたが、これはまた、jQueryで多くの経験を持っていない(しかし、いくつかより多くのPHPとWP)を持っていません。とにかく、私の現在の問題は次のとおりです。 投稿内の1ページのコンテンツを取り込むのに、どのような機能を使用できますか?投稿を5ページに分割したいとします.3ページの内容を取得するにはどうすればよいですか? 私はこれを新しいスレッド/質問で尋ねることができますか?これはスパムと見なされますか? – stackhouse

+0

@stackhouseあなたはジャスパーの質問に答えたいと思うかもしれません! –

0

ワードプレス宇宙の中で、あなたはすべてのワードプレスにアクセスできますが、それはあなたがその可視性を得るために何をするかの問題です。以下は、私が最近使用した3つのポストを取得し、それらのスニペットを表示するためにホームページで使用したコードスニペットです。あなたがワードプレスの範囲外にいる場合は、いくつかのワードプレスファイルを含める方法を見つける必要があります。

私は何を提供していると信じて、グーグルがあなたをソートすることができます。もし$mypostsが3つのポストアレイをメンバーとして持っていれば、選択して選ぶことができます。

<!-- language: php --> 
<? $myposts = get_posts('numberposts=3'); 
     foreach($myposts as $post) : 
     setup_postdata($post); ?> 
<h2 id="page_title"><a class="noblock" href="<?php the_permalink() ?>" title="Permanent Link to <?php the_title(); ?>"><?php the_title(); ?></a></h2> 
<p class="ccw_light location"><small><?php the_time('l, F jS, Y') ?></small></p> 
         <br style="line-height:5px"> 
         <div class="content_text" id="noblock"> 
           <?php the_content('... continues','','') ?> 
             <span class="right"><small>Posted in <?php the_category(', ') ?> <strong>|</strong> <?php edit_post_link('Edit','','<strong> |</strong>'); ?></small> 
             </span> 
           </div> 
         </div> 
<br> <!-- <?php trackback_rdf(); ?> --> 
<?php endforeach; ?> 
関連する問題