ホームページ >CMS チュートリアル >&#&プレス >WordPressユーザーログインカウンタープラグインの構築
wordpress:ユーザーログインカウンタープラグインを作成
WordPressは、今日のWeb上で最も人気のあるコンテンツ管理システム(CMS)です。 Forbesのデータによると、世界中の6,000万件以上のWebサイトがWordPressを超えて実行されており、CMSフィールドでの主要な位置を証明するのに十分です。 WordPressの大きな利点の1つは、その巨大なプラグインライブラリです。 eコマースストアを建設したいですか? woocommerceはあなたを満足させることができます。採用ポータルが必要ですか? WPジョブマネージャーはあなたの選択です。
このチュートリアルでは、ユーザーがWordPress Webサイトにログに記録し、ユーザーリストページのカスタム列にログイン統計を表示する回数をカウントするプラグインを作成するように導きます。
ディレクトリにあるPHPファイルです。この場合、ファイル名は/wp-content/plugins/
です。 FTP/SFTP/SCPまたはSSHを使用してサーバーに接続することに精通していると思います。 wordpress-login-count.php
。このチュートリアルの最後に、完全なプラグインダウンロードリンクが提供されます。 wordpress-login-count.php
<code class="language-php"><?php /* Plugin Name: WordPress 用户登录计数器 Plugin URI: http://sitepoint.com Description: 统计用户登录WordPress账户的次数。 Version: 1.0 Author: Agbonghama Collins Author URI: http://w3guy.com License: GPL2 */</code>次に、PHPネームスペースを追加して、次のようにプラグインクラスを作成します。
プラグインに必要なすべての操作およびフィルターフックは、
<code class="language-php">namespace Sitepoint\WordPressPlugin; class Login_Counter { // ...</code>メソッドに入ります。
init()
<code class="language-php">public function init() { add_action( 'wp_login', array( $this, 'count_user_login' ), 10, 2 ); add_filter( 'manage_users_columns', array( $this, 'add_stats_columns' ) ); add_action( 'manage_users_custom_column', array( $this, 'fill_stats_columns' ), 10, 3 ); }</code>操作フックは、ユーザーがログインするときにWordPressによってトリガーされるため、これはユーザーログインの数をカウントするために使用する適切なフックです。
wp_login
次の
count_user_login()
<code class="language-php"> /** * 将用户登录计数保存到数据库。 * * @param string $user_login 用户名 * @param object $user WP_User 对象 */ public function count_user_login( $user_login, $user ) { if ( ! empty( get_user_meta( $user->ID, 'sp_login_count', true ) ) ) { $login_count = get_user_meta( $user->ID, 'sp_login_count', true ); update_user_meta( $user->ID, 'sp_login_count', ( (int) $login_count + 1 ) ); } else { update_user_meta( $user->ID, 'sp_login_count', 1 ); } }</code>メタフィールドを持っているかどうかを確認します。 FALSEの場合、以前に保存したログインカウントを取得し、1に追加します。したがって、値1はユーザーのメタフィールドに保存されます。
sp_login_count
manage_users_custom_column
に添付され、新しい列を追加します。 fill_stats_columns()
manage_users_custom_column
<code class="language-php"> /** * 使用值填充统计列。 * * @param string $empty * @param string $column_name * @param int $user_id * * @return string|void */ public function fill_stats_columns( $empty, $column_name, $user_id ) { if ( 'login_stat' == $column_name ) { if ( get_user_meta( $user_id, 'sp_login_count', true ) !== '' ) { $login_count = get_user_meta( $user_id, 'sp_login_count', true ); return "<strong>$login_count</strong>"; } else { return __( 'No record found.' ); } } return $empty; }</code>条件により、実際に
列にあることが保証されます。次に、if
条件でユーザーがログインカウントを持っているかどうかを確認します。 trueの場合、ログイン数を返します。 login_stat
if
get_instance()
最後に、PHPクラスを実行するためにinit()
メソッドを呼び出します。
get_instance()
完成しました!ログインカウンタープラグインのエンコードが完了しました。
プラグインの構築方法について詳しく知り、WordPressサイトに実装するには、GitHubからダウンロードしてください。 (GitHubリンクはここに追加する必要があります)
これが、WordPress用のプラグインを開発する方法を学ぶのに役立つことを願っています。
コメントであなたの考えを共有してください。
ワードプレスユーザーログインカウンタープラグインの構築に関する投稿のHTMLコードで現在のユーザーIDを使用するには、WordPress関数get_current_user_id()
を使用する必要があります。この関数は、現在ログインしているユーザーのIDを返します。その後、このIDをHTMLコードで使用できます。たとえば、ユーザーにパーソナライズされたメッセージを表示するために使用できます。使用方法の例は次のとおりです。
<code class="language-php"><?php /* Plugin Name: WordPress 用户登录计数器 Plugin URI: http://sitepoint.com Description: 统计用户登录WordPress账户的次数。 Version: 1.0 Author: Agbonghama Collins Author URI: http://w3guy.com License: GPL2 */</code>なぜ
wp_signon()
関数は、いくつかの理由で機能しない場合があります。よくある理由は、ヘッダーを送信した後に使用しようとすることです。この関数は、出力がブラウザに送信される前に呼び出される必要があります。そうしないと、機能しません。もう1つの理由は、関数に渡された資格情報が正しくないことです。ユーザー名とパスワードが正しいこと、およびユーザーがWordPressデータベースに存在することを確認してください。 wp_signon()
カウンター番号のショーケースプラグインとは何ですか?それはどのように機能しますか?
<code class="language-php">namespace Sitepoint\WordPressPlugin; class Login_Counter { // ...</code>
WordPressでユーザーログインの数を追跡する方法は?
wp_login
この例では、ユーザーがログインするたびに
<code class="language-php">public function init() { add_action( 'wp_login', array( $this, 'count_user_login' ), 10, 2 ); add_filter( 'manage_users_columns', array( $this, 'add_stats_columns' ) ); add_action( 'manage_users_custom_column', array( $this, 'fill_stats_columns' ), 10, 3 ); }</code>
注:上記のコードの例は、WordPressをエンコードする仕様と読みやすさに沿ってより沿ったように調整されています。 実際のプラグインコードには、より包括的なエラー処理とセキュリティに関する考慮事項が必要になる場合があります。 生産環境でプラグインを慎重にテストしてください。 track_user_logins()
以上がWordPressユーザーログインカウンタープラグインの構築の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。