LoginSignup
0
4

More than 5 years have passed since last update.

(WIP) WordPressとBuddyPressをちょっとだけカスタマイズする

Posted at

はじめに

 とあるSNSサイトを作ることになり、いろいろなPHP系のCMS/SNSを試したところ、WordPress + BuddyPressが要件にマッチしていたので調査がてら、ちょっと足りないところがあったのでテーマとプラグインで対応してみた。

追加したコード

サイト名をクリックしたら、個人ページへ飛ぶ

子テーマで対応。親テーマはtwentysixteenを使用。

child/header.php
    <?php if ( is_user_logged_in() ) : ?>
        <?php $login_user = wp_get_current_user(); ?>
        <?php if ( is_front_page() && is_home() ) : ?>
            <h1 class="site-title"><a href="<?php echo esc_url( home_url( '/member/' . $login_user->user_login ) ); ?>" rel="home"><?php bloginfo( 'name' ); ?></a></h1>
        <?php else : ?>
            <p class="site-title"><a href="<?php echo esc_url( home_url( '/member/' . $login_user->user_login ) ); ?>" rel="home"><?php bloginfo( 'name' ); ?></a></p>
        <?php endif; ?>
    <?php else : ?>
        <?php if ( is_front_page() && is_home() ) : ?>
            <h1 class="site-title"><a href="<?php echo esc_url( home_url( '/' ) ); ?>" rel="home"><?php bloginfo( 'name' ); ?></a></h1>
        <?php else : ?>
            <p class="site-title"><a href="<?php echo esc_url( home_url( '/' ) ); ?>" rel="home"><?php bloginfo( 'name' ); ?></a></p>
        <?php endif; ?>
    <?php endif; ?>

ログインした後に、個人ページに飛ぶ

プラグイン開発(?)で対応。

plugin.php
public function redirect_member_mypage($login_user) {
    wp_safe_redirect('/member/' . $login_user);
    exit();
}
add_action( 'wp_login', 'redirect_member_mypage', 10, 1 );

使用プラグイン

BuddyPress系

  1. BuddyPress
    WordPress用SNSプラグイン
  2. BuddyPress Activity Plus
    BuddyPressのアクティビティにメディアを追加可能にする
  3. BuddyPress Activity Privacy
    BuddyPressのアクティビティの公開範囲を設定可能にする
  4. BuddyPress Members only
    会員制のクローズドSNSを作るために使用。ログインをしないとSNSページが表示されなくなる
0
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
4