wordpress:ユーザーログインカウンタープラグインを作成
WordPressは、今日のWeb上で最も人気のあるコンテンツ管理システム(CMS)です。 Forbesのデータによると、世界中の6,000萬件以上のWebサイトがWordPressを超えて実行されており、CMSフィールドでの主要な位置を証明するのに十分です。 WordPressの大きな利點の1つは、その巨大なプラグインライブラリです。 eコマースストアを建設(shè)したいですか? woocommerceはあなたを満足させることができます。採用ポータルが必要ですか? WPジョブマネージャーはあなたの選択です。
このチュートリアルでは、ユーザーがWordPress Webサイトにログに記録し、ユーザーリストページのカスタム列にログイン統(tǒng)計を表示する回數(shù)をカウントするプラグインを作成するように導(dǎo)きます。
ほとんどのWordPressプラグインファイルは、
ディレクトリにあるPHPファイルです。この場合、ファイル名は/wp-content/plugins/
です。 FTP/SFTP/SCPまたはSSHを使用してサーバーに接続することに精通していると思います。 wordpress-login-count.php
。このチュートリアルの最後に、完全なプラグインダウンロードリンクが提供されます。 wordpress-login-count.php
<?php /* Plugin Name: WordPress 用戶登錄計數(shù)器 Plugin URI: http://sitepoint.com Description: 統(tǒng)計用戶登錄WordPress賬戶的次數(shù)。 Version: 1.0 Author: Agbonghama Collins Author URI: http://w3guy.com License: GPL2 */次に、PHPネームスペースを追加して、次のようにプラグインクラスを作成します。
プラグインに必要なすべての操作およびフィルターフックは、
namespace Sitepoint\WordPressPlugin; class Login_Counter { // ...メソッドに入ります。
init()
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 ); }操作フックは、ユーザーがログインするときにWordPressによってトリガーされるため、これはユーザーログインの數(shù)をカウントするために使用する適切なフックです。
wp_login
次の
count_user_login()
/** * 將用戶登錄計數(shù)保存到數(shù)據(jù)庫。 * * @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 ); } }メタフィールドを持っているかどうかを確認(rèn)します。 FALSEの場合、以前に保存したログインカウントを取得し、1に追加します。したがって、値1はユーザーのメタフィールドに保存されます。
sp_login_count
manage_users_custom_column
に添付され、新しい列を追加します。 fill_stats_columns()
manage_users_custom_column
/** * 使用值填充統(tǒng)計列。 * * @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; }條件により、実際に
列にあることが保証されます。次に、if
條件でユーザーがログインカウントを持っているかどうかを確認(rèn)します。 trueの場合、ログイン數(shù)を返します。 login_stat
if
get_instance()
最後に、PHPクラスを?qū)g行するためにinit()
メソッドを呼び出します。
get_instance()
完成しました!ログインカウンタープラグインのエンコードが完了しました。
要約
プラグインの構(gòu)築方法について詳しく知り、WordPressサイトに実裝するには、GitHubからダウンロードしてください。 (GitHubリンクはここに追加する必要があります)
これが、WordPress用のプラグインを開発する方法を?qū)Wぶのに役立つことを願っています。
コメントであなたの考えを共有してください。
ワードプレスユーザーログインカウンタープラグインの構(gòu)築に関するFAQ(FAQ)
投稿にHTMLコードで現(xiàn)在のユーザーIDを使用する方法は?
投稿のHTMLコードで現(xiàn)在のユーザーIDを使用するには、WordPress関數(shù)get_current_user_id()
を使用する必要があります。この関數(shù)は、現(xiàn)在ログインしているユーザーのIDを返します。その後、このIDをHTMLコードで使用できます。たとえば、ユーザーにパーソナライズされたメッセージを表示するために使用できます。使用方法の例は次のとおりです。
<?php /* Plugin Name: WordPress 用戶登錄計數(shù)器 Plugin URI: http://sitepoint.com Description: 統(tǒng)計用戶登錄WordPress賬戶的次數(shù)。 Version: 1.0 Author: Agbonghama Collins Author URI: http://w3guy.com License: GPL2 */なぜ
機(jī)能が機(jī)能しないのですか? wp_signon()
関數(shù)は、いくつかの理由で機(jī)能しない場合があります。よくある理由は、ヘッダーを送信した後に使用しようとすることです。この関數(shù)は、出力がブラウザに送信される前に呼び出される必要があります。そうしないと、機(jī)能しません。もう1つの理由は、関數(shù)に渡された資格情報が正しくないことです。ユーザー名とパスワードが正しいこと、およびユーザーがWordPressデータベースに存在することを確認(rèn)してください。 wp_signon()
PHPを使用してログインカウンターを作成するには、セッションまたはCookieを使用できます。ユーザーがログインすると、セッションまたはCookieに保存されているカウンターをインクリメントできます。セッションを使用する簡単な例が次のとおりです。
カウンター番號のショーケースプラグインとは何ですか?それはどのように機(jī)能しますか?
namespace Sitepoint\WordPressPlugin; class Login_Counter { // ...
カウンターナンバーショーケースプラグインは、WordPressプラグインであり、ウェブサイトにカウンターを表示できます。これを使用して、ユーザーの數(shù)、投稿、コメントなどのさまざまな統(tǒng)計を表示できます。プラグインは、投稿またはページで使用してカウンターを表示できる短いコードを提供します。プラグインの設(shè)定を使用して、カウンターの外観をカスタマイズできます。
WordPressでユーザーログインの數(shù)を追跡する方法は?
WordPressでユーザーログインの數(shù)を追跡するには、
操作フックを使用できます。このフックは、ユーザーがログインするたびにトリガーされます。それを使用して、ユーザーメタデータに保存されているカウンターを増やすことができます。例は次のとおりです。
wp_login
この例では、ユーザーがログインするたびに
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 ); }
注:上記のコードの例は、WordPressをエンコードする仕様と読みやすさに沿ってより沿ったように調(diào)整されています。 実際のプラグインコードには、より包括的なエラー処理とセキュリティに関する考慮事項が必要になる場合があります。 生産環(huán)境でプラグインを慎重にテストしてください。 track_user_logins()
以上がWordPressユーザーログインカウンタープラグインの構(gòu)築の詳細(xì)內(nèi)容です。詳細(xì)については、PHP 中國語 Web サイトの他の関連記事を參照してください。

ホットAIツール

Undress AI Tool
脫衣畫像を無料で

Undresser.AI Undress
リアルなヌード寫真を作成する AI 搭載アプリ

AI Clothes Remover
寫真から衣服を削除するオンライン AI ツール。

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中國語版
中國語版、とても使いやすい

ゼンドスタジオ 13.0.1
強(qiáng)力な PHP 統(tǒng)合開発環(huán)境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック

WordPressがサーバーCPU使用の急増を引き起こす主な理由には、プラグインの問題、非効率的なデータベースクエリ、テーマコードの品質(zhì)の低さ、またはトラフィックの急増が含まれます。 1.最初に、トップ、HTOP、またはコントロールパネルツールを介したWordPressによって引き起こされる高い負(fù)荷であるかどうかを確認(rèn)します。 2.トラブルシューティングモードを入力して、プラグインを徐々に有効にしてパフォーマンスのボトルネックをトラブルシューティングし、QueryMonitorを使用してプラグインの実行を分析し、非効率的なプラグインを削除または交換します。 3.キャッシュプラグインをインストールし、冗長データをクリーンアップし、スロークエリログを分析してデータベースを最適化します。 4.トピックには、コンテンツの過負(fù)荷、複雑なクエリ、キャッシングメカニズムの欠如などの問題があるかどうかを確認(rèn)します。標(biāo)準(zhǔn)のトピックテストを使用して、コードロジックを比較および最適化することをお勧めします。上記の手順に従って、場所を確認(rèn)して解決し、問題を1つずつ解決します。

JavaScriptファイルをマイニングすると、ブランク、コメント、役に立たないコードを削除することにより、WordPress Webサイトの読み込み速度を向上させることができます。 1。W3TOTALCACHEなどの圧縮をサポートするキャッシュプラグインを使用し、「MINIFY」オプションで圧縮モードを有効にし、選択します。 2。FastVelocityMinifyなどの専用圧縮プラグインを使用して、より細(xì)かい制御を提供します。 3. JSファイルを手動で圧縮し、FTPを介してアップロードします。これは、開発ツールに精通しているユーザーに適しています。一部のテーマまたはプラグインスクリプトは圧縮関數(shù)と競合する可能性があり、アクティベーション後にWebサイト機(jī)能を徹底的にテストする必要があることに注意してください。

プラグインに依存しないWordPressサイトを最適化する方法は次のとおりです。1。積み重なったテーマを避けるために、AstraやGeneratePressなどの軽量テーマを使用します。 2. CSSおよびJSファイルを手動で圧縮およびマージして、HTTP要求を削減します。 3.アップロードする前に畫像を最適化し、WebP形式を使用し、ファイルサイズを制御します。 4. configure.htaccessブラウザキャッシュを有効にし、CDNに接続して靜的リソースの負(fù)荷速度を向上させます。 5.記事の改訂を制限し、定期的にデータベース冗長データをクリーンにします。

Transientapiは、自動有効期限データを一時的に保存するためのWordPressの組み込みツールです。そのコア関數(shù)は、set_transient、get_transient、delete_transientです。 OptionsAPIと比較して、Transimentsは、Cache API要求の結(jié)果や複雑なコンピューティングデータなどのシナリオに適した、生存時間(TTL)の設(shè)定をサポートしています。それを使用する場合、キーネーミングと名前空間の獨自性、キャッシュ「怠zyな削除」メカニズム、およびオブジェクトキャッシュ環(huán)境では続かない問題に注意を払う必要があります。一般的なアプリケーションシナリオには、外部要求頻度の削減、コード実行リズムの制御、ページの読み込みパフォーマンスの改善が含まれます。

コメントスパムを防ぐ最も効果的な方法は、プログラマティックな手段を介して自動的に識別して傍受することです。 1.検証コードメカニズム(Googler CaptchaやHcaptchaなど)を使用して、特に公共のWebサイトに適した人間とロボットを効果的に區(qū)別します。 2.隠しフィールド(ハニーポットテクノロジー)を設(shè)定し、ロボットを使用して機(jī)能を自動的に埋めて、ユーザーエクスペリエンスに影響を與えることなくスパムコメントを識別します。 3.コメントコンテンツのブラックリストを確認(rèn)し、敏感な単語の一致を通じてスパム情報をフィルタリングし、誤判斷を避けるために注意を払ってください。 4.コメントの頻度とソースIPを判斷し、単位時間あたりの提出數(shù)を制限し、ブラックリストを確立します。 5.サードパーティのスパムサービス(Akismet、CloudFlareなど)を使用して、識別の精度を向上させます。ウェブサイトに基づいていることができます

PluginCheckは、WordPressユーザーがプラグインの互換性とパフォーマンスをすばやくチェックするのに役立つツールです。主に、現(xiàn)在インストールされているプラ??グインに、WordPressの最新バージョン、セキュリティの脆弱性などと互換性がないなどの問題があるかどうかを特定するために使用されます。インストールとアクティベーションの後、バックグラウンドの「runaScan」ボタンをクリックして、すべてのプラグインを自動的にスキャンします。 2。レポートには、プラグイン名、検出タイプ、問題の説明、およびソリューションの提案が含まれています。これにより、深刻な問題の優(yōu)先処理が容易になります。 3. WordPressを更新する前に検査を?qū)g行することをお勧めします。ウェブサイトの異常が異常である場合、または定期的に実行されて隠された危険を事前に発見し、將來の大きな問題を回避することをお勧めします。

Gutenbergブロックを開発する場合、エンキュー資産の正しい方法には次のものが含まれます。1。register_block_typeを使用して、editor_script、editor_style、およびstyleのパスを指定します。 2。functions.phpまたはプラグインでwp_register_scriptとwp_register_styleを介してリソースを登録し、正しい依存関係とバージョンを設(shè)定します。 3.適切なモジュール形式を出力し、パスが一貫していることを確認(rèn)するためのビルドツールを構(gòu)成します。 4. Add_Theme_SupportまたはEnqueue_Block_Assetsを介してフロントエンドスタイルの読み込みロジックを制御して、フロントエンドスタイルのロードロジックが確保されるようにします。

カスタムユーザーフィールドを追加するには、プラットフォームに従って拡張メソッドを選択し、データ検証と許可制御に注意を払う必要があります。一般的なプラクティスには次のものが含まれます。1。データベースの追加のテーブルまたはキー価値ペアを使用して情報を保存します。 2.フロントエンドに入力ボックスを追加し、バックエンドと統(tǒng)合します。 3。機(jī)密データのフォーマットチェックとアクセス許可を制約します。 4.モバイルの適応とユーザーエクスペリエンスを考慮しながら、新しいフィールド表示と編集をサポートするインターフェイスとテンプレートを更新します。
