Re: How can I get a paged activity-stream instead of the “Load more”?
Marius, I did exactly this, but it didn’t work, until I found another thread. The problem was, that the links were shown, but they didn’t give a result. To solve thist, here’s what Andy said: “You either need to write the AJAX function to handle this (you should be able to copy something from one of the core components) or put a class=”no-ajax” on the surrounding div. “
So, using your funtion an adding the no-ajax class, my activity-loop.php in my child-theme now looks like this and it works. Thank you very much for your help!
<?php /* Querystring is set via AJAX in _inc/ajax.php - bp_dtheme_activity_loop() */ ?>
<?php do_action( 'bp_before_activity_loop' ) ?>
<?php if ( bp_has_activities( bp_ajax_querystring( 'activity' ) ) ) : ?>
<?php /* Show pagination if JS is not enabled, since the "Load More" link will do nothing */ ?>
<div class="pagination">
<div class="no-ajax"><div class="pag-count"><?php bp_activity_pagination_count() ?></div>
<div class="pagination-links"><?php bp_activity_pagination_links() ?></div>
</div></div>
<?php if ( empty( $_POST['page'] ) ) : ?>
<ul id="activity-stream" class="activity-list item-list">
<?php endif; ?>
<?php while ( bp_activities() ) : bp_the_activity(); ?>
<?php include( locate_template( array( 'activity/entry.php' ), false ) ) ?>
<?php endwhile; ?>
<?php if ( bp_get_activity_count() == bp_get_activity_per_page() ) : ?>
<noscript><li class="load-more">
<?php _e( 'Load More', 'buddypress' ) ?> <span class="ajax-loader"></span>
<?php endif; ?></noscript>
<?php if ( empty( $_POST['page'] ) ) : ?>
<?php endif; ?>
<?php else : ?>
<div id="message" class="info">
<p><?php _e( 'Sorry, there was no activity found. Please try a different filter.', 'buddypress' ) ?></p>
</div>
<?php endif; ?><div class="pagination">
<div class="no-ajax"><div class="pag-count"><?php bp_activity_pagination_count() ?></div>
<div class="pagination-links"><?php bp_activity_pagination_links() ?></div>
</div></div>
<?php do_action( 'bp_after_activity_loop' ) ?>
<form action="" name="activity-loop-form" id="activity-loop-form" method="post">
<?php wp_nonce_field( 'activity_filter', '_wpnonce_activity_filter' ) ?>
</form>
You can see it running on http://netzkritzler.de.
The last page is not shown, I don’t know why, but that doesn’t really matter.