WP Manifestindependent plugin directory
manifest / users / simple-pairup

Simple PairUp

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

by Your Name · github.com/takazawashota/simple-pairup · website

0stars
0forks

Install

No release zip yet. The repository archive installs, but the folder name will carry the branch suffix and updates will not flow:

wp plugin install https://github.com/takazawashota/simple-pairup/archive/refs/heads/main.zip

Readme

Simple PairUp

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

Read the full README on GitHub →