Хаки для настройки BuddyPress под свой проект

Если вы уже установили MU и , то пора подумать о настройке. Вам надо определиться с тем, как будет выглядеть ваша социальная сеть, каков будет ее функционал. И часто может возникать ситуация, что некоторые элементы вы просто не знаете, как изменить.

Представляю вам список мини хаков, которые могут быть вам полезны для уникализации вашей социальной сети. Все вставляется в файл wp-config. после строки определение префикса базы и ДО строки подключения wp-settings.php.

1. Если вы установили сразу BuddyPress версии 1.1 и выше, то есть не переходили с 1.0 на более новую версию, то резонно возникает вопрос – зачем вам загружать тот , которые оставлен в движке для режима совместимости с 1.0? Это увеличивает нагрузку и потребление памяти. Правильно, вам это ни к чему. Поэтому отключаем его вот такой строкой кода:

define ( ‘BP_IGNORE_DEPRECATED’, true );

2. Если вы хотите использовать функции и/или виджеты BuddyPress не только на главном сайте, то вам надо его (BP) включить для всех блогов внутри вашей сети:

define ( ‘BP_ENABLE_MULTIBLOG’, true );

Но осторожно, включение данной возможности увеличивает потребление памяти на всех внутренних блогах, и если их много и они активны, то это может привести к неприятным последствиям.

3. Предположим, у вас установлен WPMU по-человечески, то есть все блоги создается в поддоменах (blog.example.com). В этом случает вы можете здорово улучшить url до профиля пользователя, убрав из этого адреса слово “members”, т.е. получите ссылку вида: demo.cosydale.com/admin вместо demo.cosydale.com/members/admin.

define ( ‘BP_ENABLE_ROOT_PROFILES’, true );

Но будьте внимательны – не используйте этот , если у вас блоги создаются в режиме поддиректорий! Иначе будет путаница с путями и при попытке попасть на страницу пользователя вы будете попадать на его .

4. Про использование в качестве главного сайта не основной домен, а какой-нибудь поддомен (social.example.org) я уже писал вам вот в этой записи: Альтернативный вариант установки BuddyPress.

5. Вам не нравится или вы считаете его бесполезным? Тогда отключите его для всего сайта и всех блогов!

define ( ‘BP_DISABLE_ADMIN_BAR’, true );

Можно пойти еще дальше: если вы редактируете его, меняете стили или расположение блоков, то пользователям не обязательно видеть, что он временами совершенно случайно будет разваливаться :) Поэтому вы можете вставить вот такой код:

if ( !is_site_admin() )
define ( ‘BP_DISABLE_ADMIN_BAR’, true );

Этот код проверяет, является ли на сайте админом, и если нет – но отключает BuddyBar, если вы админ – то оставляет его включенным.

6. Если вам нравится фишка с логином в гугл-mail, где вы можете иметь точку и имени (что-то вроде cd.slaFFik), то тогда вам надо включить поддержку LDAP:

define( ‘BP_ENABLE_USERNAME_COMPATIBILITY_MODE’, true );

После включения, при регистрации пользователи смогут делать свои логины (которые являются частью пути к странице их профиля) с точкой внутри.

7. Теперь начинается рок-н-рол ;) Вы можете менять вид ссылок в том или ином компоненте. Пример: в шаблоне вы указали текст ссылки Группы как Сообщества, но ведь в url все равно остались groups… Поэтому вы прописываете:

define ( ‘BP_GROUPS_SLUG’, ‘community’ );
define ( ‘BP_ACTIVITY_SLUG’, ‘streams’ );
define ( ‘BP_BLOGS_SLUG’, ‘journals’ );
define ( ‘BP_MEMBERS_SLUG’, ‘users’ );
define ( ‘BP_FRIENDS_SLUG’, ‘peeps’ );
define ( ‘BP_MESSAGES_SLUG’, ‘notes’ );
define ( ‘BP_WIRE_SLUG’, ‘board’ );
define ( ‘BP_XPROFILE_SLUG’, ‘info’ );
define ( ‘BP_REGISTER_SLUG’, ‘signup’ );
define ( ‘BP_ACTIVATION_SLUG’, ‘enable’ );
define ( ‘BP_SEARCH_SLUG’, ‘find’ );
define ( ‘BP_HOME_BLOG_SLUG’, ‘news’ );

И отныне у вас поменялся вид ссылок. Это еще неплохой способ визуальной маскировки вашего движка и возможность в будущем защиты от бестолковых регистраций ботов, которые будут привязаны к стандартному пути.

Если вы не хотите что-то менять, просто удалите соответствующую строку.

8. И последний пункт сегодняшней порции хаков – меняем размер аватаров. Меня кто-то спрашивал в комментариях про это, вот вам мой ответ :)

define ( ‘BP_AVATAR_THUMB_WIDTH’, 50 );
define ( ‘BP_AVATAR_THUMB_HEIGHT’, 50 );
define ( ‘BP_AVATAR_FULL_WIDTH’, 150 );
define ( ‘BP_AVATAR_FULL_HEIGHT’, 150 );
define ( ‘BP_AVATAR_ORIGINAL_MAX_WIDTH’, 640 );
define ( ‘BP_AVATAR_ORIGINAL_MAX_FILESIZE’, $max_in_kb );
define ( ‘BP_AVATAR_DEFAULT’, $img_url );
define ( ‘BP_AVATAR_DEAFULT_THUMB’, $img_url );

Выбираете тот, который вам нужно поменять, и вставляете в файл wp-config.php. Остальные просто игнорируете. Последние 2 строки позволяют вам настроить стандартный – вы можете поменять его на свой, для этого вместо $img_url прописываете в кавычках путь к вашему собственному рисунку.

PS Следите за тем, какие кавычки вы использовали: они должны быть английскими одинарными (те, что вставляются в английской раскладке клавы по нажатию на русскую букву “Э”)

На данный момент 52 комментария

  • Будем ждать)

  • Вопрос с аватарами для блогов появился сразу после выхода 1.0 :) разрабы обещают.. а вот сделают ли или нет.. то есть ждем 1.2 ;)

  • @Игорь и Александр:
    Я начал заниматься переводом и тестированием BP 1.2. Там в качестве аватарок блогов используются аватары пользователей. Проверено – работает.

    Я хочу сделать в 1.2 правильное склонение множественного числа. Если вы тоже этого хотите, то можете поддержать мою инициативу на R606370912868 или Z178280199536.
    Всем спасибо!

  • slaFFik,
    поддержать не проблема :) ты б как то это оформил.. ну чтоб сразу было видно о чем тут и что можно поддерживать (и не только базу, но и развитие дополнительных фитч)

    по поводу аватарок для блогов.. то есть создал 10 блогов и на всех будет моя рожа? ROLF

  • @Александр:
    Если рожа нормальная – то можно и показать всем ))
    В 1.4 (согласно плану) думают сделать самостоятельный выбор аватара для блога. Но я думаю сделано в ядре будет гораздо раньше – в 1.3. В виде плагина – еще раньше можно :)

  • Нее.. ну если рожа ничо.. но когда их будет 10? 20? :) народ не поймет… ;)

    Кстати -в новой версии (1.2) если блогов у юзера (админа ;) ) больше 10 – по списку их листать то можно будет? (а то 10 штук выводит и все..)

  • Подскажите а есть ли возможность поиска сразу по всей блог системе. Например мне надо найти посты где встречается слово “Пони” и он мне все посты с этим словом со всех блогов выдает.

    И также есть может примочка которая выводит допустим 10 комментариев со всех блогов.

  • Новый хак :)

    Если используется установка с поддоменами (blog.demo.net), то в feed-rss, feed-rss2.php (/wp-include) – удалить строку < ? xml version = ..

    Иначе на поддоменах можно получить ошибку при запросе blog.demo.net/feed

  • Игорь, есть такая возможность, или устанавливать свой поисковой скрипт, их много разных или подключить сторонний поисковик такая возможность тоже есть, свой скрипт будет получше, но это предполагает под собой использование бд и ресурсы сервера

  • Игорь. А можно подсказку на уже проверенные решения поискового скрипта в Б BuddyPress?

  • @Игорь:
    Попробуйте разобраться вот в этом:

    http://buddypress.org/blog/community/google-custom-search-for-buddypress-wpmu/

    Мне показалось сомнительным, потому я не выложил тут в свое время. Только помните, что запись эта старая.

  • А как отключить активацию почты на BuddyPress

  • Не подскажите, можно-ли как-нибуть сделать чтоб пользователи могли регистрироваться с – “тире\минус” и\или _ “нижнее подчеркивание” в своих логинах,. Ну очень надо,..?

    • Можно, кажется, с помощью вот этого плагина. Не смотрите на его название, там Сергей кое-что подправил.

      • Спасибо большое!!!!

        А не скажите?, для доменов есть подобные штуки? Чтоб они и блоги себе заводили такие-же,. ну хотябы с – “тире”, что-то типа: miu-miu.domin.com??

        • С дефисом и так можно заводить блоги, если я не ошибаюсь. Вы пробовали хотя бы?

          • Пробовал – естественным путем,- через регистрацию говорит только цифры и малые буквы eng-алфавита.

            А через админку – да, можно добавить с тире,.

            Надо-ж чтоб пользователи сами себе домен выбирали ((

            Спасибо за быстрый ответ!

          • Нельзя… причём это прописано в коде без всяких фильтров и экшенов. Только буквы и цифры.. хотя бы одна буква, и не меньше четырёх знаков.
            Причём одинаково сделано и код продублирован и в BP и в WP.
            И для логинов и для сайтов.

  • Посоветуйте пожалуйста плагин регистрации по инвайтам.

    Спасибо

  • Только что сравнивал производительность на хостинге jino.ru buddypress и drupal 7. Всё по дефолту. Просто тыкал по загладкам в обеих CMS. Кеши отключены.

    Вот что получилось:
    00:30 19.11% buddypress
    02:55 11.30% drupal 7

    Что-то грусно стало :(

RSS лентаTrackBack URL

Включиться в обсуждение

XHTML: <blockquote></blockquote> <a href=""></a> <strong></strong>

Если нужно разместить код, используйте теги: <pre>php|html|js</pre>