Сетка членов в buddypress меню - PullRequest
0 голосов
/ 08 января 2020

Я попытался создать шорткод для страницы сетки участников buddypress, чтобы добавить его в меню buddypress (у меня есть только как отдельная страница). Все нормально, но по какой-то странной причине ссылки на страницы не работают. Если я открываю ссылку правой кнопкой мыши на другой странице, она работает нормально, но если я нажимаю левую кнопку мыши, ничего не происходит. Я не знаю причину.

Это мой код в функции. php добавлено с помощью PHP Плагин Inserter для 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");

Любое решение или шаг, которому нужно следовать?

Спасибо.

1 Ответ

0 голосов
/ 03 февраля 2020

Я обнаружил, что появляется это сообщение об ошибке, когда я хочу получить доступ к ссылкам с проблемами:

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

Но когда я открываю ссылку на ссылку правой кнопкой мыши, она открывается правильно. Я не понимаю Урлы это нормально, но администратор - ajax не может их открыть?

Помогите, пожалуйста.

Спасибо.

...