Members grid to buddypress menu

243 Views Asked by At

I have try to create a shortcode for buddypress members-grid page to add into buddypress menu (i have only as a separated page). It's all ok but, for some weird reason, page links not working. If i open link with right mouse button in another page it works ok, but if i clik with mouse left button nothings happen. I don't know the reason.

This is my code into functions.php added using PHP Inserter pluguin for wordpress:

function webim_members_grid($atts, $content = null) {
    $sliderrandomid = rand();
    extract( shortcode_atts( array(
                "title" => '',
                "type" => 'active',
                "count" => '' ,
                "col" => 6 // Maximum 12 
            ), $atts ));
    ob_start();

do_action( 'bp_before_directory_members_page' ); ?>

<div id="buddypress">

    <?php

    /**
     * Fires before the display of the members.
     *
     * @since 1.1.0
     */
    do_action( 'bp_before_directory_members' ); ?>

    <?php

    /**
     * Fires before the display of the members content.
     *
     * @since 1.1.0
     */
    do_action( 'bp_before_directory_members_content' ); ?>

    <?php /* Backward compatibility for inline search form. Use template part instead. */ ?>
    <?php if (version_compare( BP_VERSION, '2.7', '<' ) || has_filter( 'bp_directory_members_search_form' ) ) : ?>

        <div id="members-dir-search" class="dir-search" role="search">
            <?php bp_directory_members_search_form(); ?>
        </div><!-- #members-dir-search -->

    <?php else: ?>

        <?php bp_get_template_part( 'common/search/dir-search-form' ); ?>

    <?php endif; ?>

    <?php
    /**
     * Fires before the display of the members list tabs.
     *
     * @since 1.8.0
     */
    do_action( 'bp_before_directory_members_tabs' ); ?>

    <form action="" method="post" id="members-directory-form" class="dir-form">

        <div id="subnav" class="item-list-tabs" aria-label="<?php esc_attr_e( 'Members directory main navigation', 'buddypress' ); ?>" role="navigation">
            <ul>

                <?php

                $member_type = bp_get_current_member_type();
                if( $member_type ){
                    $member_type = bp_get_member_type_object( $member_type );
                    ?>
                    <li class="selected" id="members-all"><a href="<?php bp_members_directory_permalink(); ?>"><?php printf( esc_html__( 'All %s %s', 'kleo' ), $member_type->labels['name'] , bp_core_get_total_member_count() ); ?></a></li>
                <?php } else { ?>
                    <li class="selected" id="members-all"><a href="<?php bp_members_directory_permalink(); ?>"><?php printf( esc_html__( 'All Members %s', 'buddypress' ), '<span>' . bp_core_get_total_member_count() . '</span>' ); ?></a></li>
                <?php } ?>

                <?php if ( is_user_logged_in() && bp_is_active( 'friends' ) && bp_get_total_friend_count( bp_loggedin_user_id() ) ) : ?>
                    <li id="members-personal"><a href="<?php echo esc_url( bp_loggedin_user_domain() . bp_get_friends_slug() . '/my-friends/' ); ?>"><?php printf( esc_html__( 'My Friends %s', 'buddypress' ), '<span>' . bp_get_total_friend_count( bp_loggedin_user_id() ) . '</span>' ); ?></a></li>
                <?php endif; ?>

                <?php

                /**
                 * Fires inside the members directory member types.
                 *
                 * @since 1.2.0
                 */
                do_action( 'bp_members_directory_member_types' ); ?>

                <?php

                /**
                 * Fires inside the members directory member sub-types.
                 *
                 * @since 1.5.0
                 */
                do_action( 'bp_members_directory_member_sub_types' ); ?>

                <li id="members-order-select" class="last filter">
                    <label for="members-order-by"><?php _e( 'Order By:', 'buddypress' ); ?></label>
                    <select id="members-order-by" disabled>
                    <?php if ( bp_is_active( 'xprofile' ) ) : ?>
                        <option value="alphabetical"><?php _e( 'Alphabetical', 'buddypress' ); ?></option>
                    <?php endif; ?>
                        <!--option value="active"><?php _e( 'Last Active', 'buddypress' ); ?></option>
                        <option value="newest"><?php _e( 'Newest Registered', 'buddypress' ); ?></option-->

                        <?php

                        /**
                         * Fires inside the members directory member order options.
                         *
                         * @since 1.2.0
                         */
                        do_action( 'bp_members_directory_order_options' ); ?>
                    </select>
                </li>

            </ul>
        </div><!-- .item-list-tabs -->

        <h2 class="bp-screen-reader-text"><?php
            /* translators: accessibility text */
            _e( 'Members directory', 'buddypress' );
            ?></h2>

        <div id="members-dir-list" class="members dir-list">
            <?php bp_get_template_part( 'members/members-loop' ); ?>
        </div><!-- #members-dir-list -->

        <?php

        /**
         * Fires and displays the members content.
         *
         * @since 1.1.0
         */
        do_action( 'bp_directory_members_content' ); ?>

        <?php wp_nonce_field( 'directory_members', '_wpnonce-member-filter' ); ?>

        <?php

        /**
         * Fires after the display of the members content.
         *
         * @since 1.1.0
         */
        do_action( 'bp_after_directory_members_content' ); ?>

    </form><!-- #members-directory-form -->

    <?php

    /**
     * Fires after the display of the members.
     *
     * @since 1.1.0
     */
    do_action( 'bp_after_directory_members' ); ?>

</div><!-- #buddypress -->

<?php

/**
 * Fires at the bottom of the members directory template file.
 *
 * @since 1.5.0
 */
do_action( 'bp_after_directory_members_page' );

    $content = ob_get_contents();
    ob_end_clean();
    return $content;
}
add_shortcode("webim_members_grid", "webim_members_grid");

Any solution or step to follow?

Thank you.

1

There are 1 best solutions below

0
Shendeluth On

I discover there are this error message when i want to access links with problems:

Failed to load resource: the server responded with a status of 400

But when i open link url with right mouse button in a new tab it opens correctly. I don't understand. The Urls it's ok but admin-ajax can't open it?

Some help please.

Thnak you.