WP Manifestindependent plugin directory
manifest / users / simple-pairup

Simple PairUp

マッチングアプリのようなサイトを作成できるプラグイン。フォロー機能、タイムライン、いいね、閲覧履歴などを提供します。

★ 0stars

Install

Download source zip No release zip yet

This is the repository archive. It installs, but the folder name will carry the branch suffix and updates will not flow.

Install straight from GitHub with WP-CLI:

wp plugin install https://github.com/takazawashota/simple-pairup/archive/refs/heads/main.zip
No built-in updater. New versions won't appear under Dashboard → Updates. Install new releases yourself, or let Git Updater track the repository.

WordPressでマッチングアプリのようなサイトを作成できるプラグインです。

機能

  • ✅ ユーザー同士のフォロー機能 - 他のユーザーをフォロー/フォロー解除
  • ✅ タイムライン機能 - フォローしたユーザーの記事を一覧表示
  • ✅ マイページ機能 - プロフィール編集、いいね一覧、閲覧履歴表示
  • ✅ ログイン・会員登録機能 - カスタムログイン・登録フォーム
  • ✅ いいね機能 - 記事に対するいいね/いいね解除
  • ✅ いいね一覧 - マイページでいいねした記事を表示
  • ✅ 閲覧履歴 - マイページで閲覧した記事の履歴を表示

インストール方法

方法1: 手動インストール

  1. このプラグインフォルダ simple-pairup を /wp-content/plugins/ ディレクトリにアップロード
  2. WordPress管理画面の「プラグイン」メニューからプラグインを有効化
  3. データベーステーブルが自動的に作成されます

方法2: ZIP形式でインストール

  1. プラグインフォルダをZIP形式で圧縮
  2. WordPress管理画面の「プラグイン」→「新規追加」→「プラグインのアップロード」
  3. ZIPファイルを選択してインストール
  4. プラグインを有効化

初期設定

1. 会員登録を有効にする

WordPress管理画面で:

  • 「設定」→「一般」
  • 「メンバーシップ」の「だれでもユーザー登録ができるようにする」にチェック

2. 固定ページを作成

以下の固定ページを作成してショートコードを追加:

ログインページ

タイトル: ログイン
スラッグ: login
内容: [spu_login_form]

登録ページ

タイトル: 新規登録
スラッグ: register
内容: [spu_register_form]

マイページ

タイトル: マイページ
スラッグ: mypage
内容: [spu_mypage]

タイムライン

タイトル: タイムライン
スラッグ: timeline
内容: [spu_timeline]

ショートコード一覧

[spu_login_form]

ログインフォームを表示します。

[spu_register_form]

新規ユーザー登録フォームを表示します。

[spu_mypage]

ユーザーのマイページを表示します。以下のタブがあります:

  • プロフィール編集
  • いいねした記事一覧
  • 閲覧履歴

[spu_timeline]

フォローしているユーザーの記事をタイムライン形式で表示します。

属性:

  • posts_per_page - 1ページあたりの表示数(デフォルト: 10)

使用例:

[spu_timeline posts_per_page="20"]

[spu_follow_button user_id="123"]

特定のユーザーをフォローするボタンを表示します。

属性:

  • user_id - フォロー対象のユーザーID(必須)

使用例:

[spu_follow_button user_id="5"]

テーマへの組み込み

フォローボタンを表示

著者アーカイブページなどで以下のように使用:

<?php
if (function_exists('spu_is_following')) {
    $author_id = get_the_author_meta('ID');
    $current_user_id = get_current_user_id();

    if ($current_user_id && $current_user_id !== $author_id) {
        echo do_shortcode('[spu_follow_button user_id="' . $author_id . '"]');
    }
}
?>

いいねボタンを表示

記事ページには自動的にいいねボタンが表示されます。無効にしたい場合:

// functions.php に追加
remove_filter('the_content', 'spu_add_like_button_to_content');

手動で表示する場合:

<?php
if (function_exists('spu_user_liked_post')) {
    $post_id = get_the_ID();
    $user_id = get_current_user_id();
    $likes_count = spu_get_likes_count($post_id);
    $is_liked = spu_user_liked_post($user_id, $post_id);
    ?>
    <button class="spu-like-btn <?php echo $is_liked ? 'liked' : ''; ?>" 
            data-post-id="<?php echo $post_id; ?>">
        <span class="spu-like-icon">❤</span>
        <span class="spu-like-count"><?php echo $likes_count; ?></span>
    </button>
    <?php
}
?>

フォロワー数/フォロー数を表示

<?php
if (function_exists('spu_get_followers_count')) {
    $user_id = get_current_user_id();
    $followers = spu_get_followers_count($user_id);
    $following = spu_get_following_count($user_id);

    echo '<div class="user-stats">';
    echo '<span>' . $followers . ' フォロワー</span>';
    echo '<span>' . $following . ' フォロー中</span>';
    echo '</div>';
}
?>

データベーステーブル

プラグインは以下の3つのテーブルを作成します:

wp_spu_follows

ユーザー間のフォロー関係を管理

カラム名 型 説明
id bigint(20) 主キー
follower_id bigint(20) フォローしているユーザーID
following_id bigint(20) フォローされているユーザーID
created_at datetime フォロー日時

wp_spu_likes

記事へのいいねを管理

カラム名 型 説明
id bigint(20) 主キー
user_id bigint(20) いいねしたユーザーID
post_id bigint(20) いいねされた記事ID
created_at datetime いいね日時

wp_spu_view_history

記事の閲覧履歴を管理

カラム名 型 説明
id bigint(20) 主キー
user_id bigint(20) 閲覧したユーザーID
post_id bigint(20) 閲覧された記事ID
viewed_at datetime 閲覧日時

関数リファレンス

プラグインが提供する便利な関数:

フォロー関連

// ユーザーがフォローしているか確認
spu_is_following($follower_id, $following_id);

// フォロワー数を取得
spu_get_followers_count($user_id);

// フォロー中のユーザー数を取得
spu_get_following_count($user_id);

// フォロー中のユーザーIDを取得
spu_get_following_ids($user_id);

いいね関連

// ユーザーが記事をいいねしているか確認
spu_user_liked_post($user_id, $post_id);

// 記事のいいね数を取得
spu_get_likes_count($post_id);

// ユーザーがいいねした記事を取得
spu_get_user_liked_posts($user_id, $limit = 10, $offset = 0);

閲覧履歴関連

// ユーザーの閲覧履歴を取得
spu_get_user_view_history($user_id, $limit = 10, $offset = 0);

カスタマイズ

スタイルのカスタマイズ

assets/css/style.css を編集するか、テーマの style.css で上書きしてください。

主要なCSSクラス:

  • .spu-timeline - タイムライン全体
  • .spu-post-item - 記事アイテム
  • .spu-like-btn - いいねボタン
  • .spu-follow-btn - フォローボタン
  • .spu-mypage - マイページ全体

JavaScriptのカスタマイズ

assets/js/script.js を編集するか、独自のスクリプトで動作を拡張できます。

主要なイベント:

  • Ajax呼び出し: wp_ajax_spu_like_post
  • Ajax呼び出し: wp_ajax_spu_follow_user

トラブルシューティング

いいねボタンが動作しない

  • WordPressにログインしているか確認
  • ブラウザのコンソールでJavaScriptエラーを確認
  • jQueryが読み込まれているか確認

タイムラインが空

  • フォローしているユーザーがいるか確認
  • フォローしているユーザーが記事を投稿しているか確認

会員登録ができない

  • 「設定」→「一般」で「だれでもユーザー登録ができるようにする」を有効化
  • メールアドレスが正しいか確認
  • ユーザー名がすでに使用されていないか確認

システム要件

  • WordPress 5.0 以上
  • PHP 7.0 以上
  • MySQL 5.6 以上

ライセンス

GPL v2 or later

サポート

バグ報告や機能リクエストは、プラグインのサポートフォーラムまたはGitHubリポジトリにてお願いします。

更新履歴

1.0.0

  • 初回リリース
  • 基本的なフォロー機能
  • タイムライン表示
  • いいね機能
  • マイページ機能
  • ログイン・会員登録機能
  • 閲覧履歴機能

作者

Your Name