WhoisとソーシャルデータWordPressウィジェットの構築
キーテイクアウト
- このチュートリアルでは、GoogleのPagerankや1カウント、Alexaランク、Facebookの共有、Like、Twitterツイート、LinkedInなど、ドメイン名のWHOISとソーシャル情報を表示するWordPressウィジェットを作成するための段階的なガイドを提供します。株式、およびドメインの作成と有効期限。
- ウィジェットは、JSON形式で必要なドメイン情報を返すJSONWhois APIを使用します。 「取得」要求は、APIキーとドメイン名を要求パラメーターとしてエンドポイントに送信します。 ウィジェットは、必要なクラス関数またはメソッドを含む標準のWP_Widgetクラスを拡張し、ウィジェットを登録することによりコーディングされます。ドメイン情報の各部分について、ウィジェットが表示する予定で、個々のデータを返す方法も作成されます。
- ウィジェットには、ウィジェットタイトル、ドメイン、およびAPIキーの3つのフィールドで構成されるバックエンド設定フォームも備えています。フォームが入力されると、更新()メソッドは、再利用のために入力された値をデータベースに消毒および保存します。 Widget()メソッドは、WordPressのフロントエンドにウィジェットを表示します。
- HTTP APIを使用してWordPressでAPIを消費する方法の実際の例をいくつか紹介することを約束しました。これは、今後の記事の最初のものです。 このチュートリアルでは、GoogleのPageRankや1カウント、Alexaランク、ドメインが作成された日付、DNS Name Serversなどのドメイン名のwhoisとソーシャル情報を表示するWordPressウィジェットを開発します。 、Facebookの株式といいねカウント、Twitterのツイート、LinkedIn株。 上記のドメイン情報は、jsonwhois apiから取得されます。 このデータを取得するには、APIキーとドメイン名をリクエストパラメータとして、Endpoint http://jsonwhois.com/api/whoisにget requestが送信されます。
それはJSONオブジェクトからです。開発したウィジェットは、そのデータを取得します。 このチュートリアルでジャンプしたい場合は、ウィジェットのデモを表示してウィジェットプラグインをダウンロードできます。
ウィジェットのコーディング最初に、プラグインヘッダーを含めてください。
WordPressウィジェットを作成するには。最初に標準のWP_WIDGETクラスを拡張し、必要なクラス機能またはメソッドを含め、最後にウィジェットを登録します。
WP_Widgetクラスを拡張する子供クラスを作成します
ウィジェットに次のように__construct()マジックメソッドを使用して名前と説明を与えます。
http://jsonwhois.com/api/whois/?apiKey=54183ad8c433fac10b6f5d7c&domain=sitepoint.com
2つの引数を受け入れるJSON_WHOIS_APIというメソッドを作成します。クエリするドメインと、JSONWhois APIに「取得」要求を送信し、応答本体を取得してから応答を変換することです。 json_decode()functionを使用してオブジェクト
<span><span><?php </span></span><span> </span><span><span>/* </span></span><span><span>Plugin Name: Domain Whois and Social Data </span></span><span><span>Plugin URI: https://www.sitepoint.com </span></span><span><span>Description: Display whois and social data of a Domain. </span></span><span><span>Version: 1.0 </span></span><span><span>Author: Agbonghama Collins </span></span><span><span>Author URI: http://w3guy.com </span></span><span><span>License: GPL2 </span></span><span><span>*/</span></span>
メモに値する
PHPプログラミングとWordPressプラグインの開発を初めて使用すると、この奇妙なものが見つかるかもしれません:
- >はオブジェクトプロパティにアクセスするために使用され、[]配列にアクセスするために使用されます。
<span>class Domain_Whois_Social_Data extends WP_Widget { </span><span>// ...</span>
以下のコードでは、この$ object-> facebook-> data [0] - > share_count;
を説明します順番にはありません。以下は、WordPressウィジェットが表示するさまざまなドメイン情報を返すクラスメソッドまたは関数です。
<span>function __construct() { </span> <span><span>parent::</span>__construct( </span> <span>'whois_social_widget', // Base ID </span> <span>__( 'Domain Whois and Social Data', 'dwsd' ), // Name </span> <span>array( 'description' => __( 'Display whois and social data of a Domain.', 'dwsd' ), ) // Description </span> <span>); </span> <span>}</span>
<span>/** </span><span> * Retrieve the response body of the API GET request and convert it to an object </span><span> * </span><span> * <span>@param $domain </span></span><span> * <span>@param $api_key </span></span><span> * </span><span> * <span>@return <span>object|mixed</span> </span></span><span> */ </span> <span>public function json_whois_api( $domain, $api_key ) { </span> <span>$url = 'http://jsonwhois.com/api/whois/?apiKey=' . $api_key . '&domain=' . $domain; </span> <span>$request = wp_remote_get( $url ); </span> <span>$response_body = wp_remote_retrieve_body( $request ); </span> <span>$decode_json_to_object = json_decode( $response_body ); </span> <span>return $decode_json_to_object; </span> <span>}</span>
<span>return $response_data->social->facebook->data[0]->share_count;</span>
<span>[facebook] => stdClass Object </span> <span>( </span> <span>[data] => Array </span> <span>( </span> <span>[0] => stdClass Object </span> <span>( </span> https<span>%3A%2F%2Feditor.sitepoint.com => https://www.sitepoint.com </span> <span>[normalized_url] => https://www.sitepoint.com/ </span> <span>[share_count] => 1094 </span> <span>[like_count] => 448 </span> <span>[comment_count] => 161 </span> <span>[total_count] => 1703 </span> <span>[commentsbox_count] => 0 </span> <span>[comments_fbid] => 501562723433 </span> <span>[click_count] => 138 </span> <span>) </span> <span>) </span> <span>)</span>
<span>/** </span><span> * Get the domain Alexa Rank </span><span> * </span><span> * <span>@param <span>object</span> $response_data JSON decoded response body </span></span><span> * </span><span> * <span>@return <span>integer</span> </span></span><span> */ </span> <span>public function alexa_rank( $response_data ) { </span> <span>return $response_data->alexa->rank; </span> <span>}</span>
<span>/** </span><span> * Number of times domain have been tweeted </span><span> * </span><span> * <span>@param <span>object</span> $response_data JSON decoded response body </span></span><span> * </span><span> * <span>@return <span>integer</span> </span></span><span> */ </span> <span>public function twitter_tweets( $response_data ) { </span> <span>return $response_data->social->twitter->count; </span> <span>}</span>
<span>/** </span><span> * Number of times domain have been shared on Facebook </span><span> * </span><span> * <span>@param <span>object</span> $response_data JSON decoded response body </span></span><span> * </span><span> * <span>@return <span>integer</span> </span></span><span> */ </span> <span>public function facebook_share_count( $response_data ) { </span> <span>return $response_data->social->facebook->data[0]->share_count; </span> <span>}</span>
<span>/** </span><span> * Number of times domain have been liked on Facebook </span><span> * </span><span> * <span>@param <span>object</span> $response_data JSON decoded response body </span></span><span> * </span><span> * <span>@return <span>mixed</span> </span></span><span> */ </span> <span>public function facebook_like_count( $response_data ) { </span> <span>return $response_data->social->facebook->data[0]->like_count; </span> <span>}</span>
<span>/** </span><span> * Number of times domain have been shared to LinkedIn </span><span> * </span><span> * <span>@param <span>object</span> $response_data JSON decoded response body </span></span><span> * </span><span> * <span>@return <span>integer</span> </span></span><span> */ </span> <span>public function linkedin_share( $response_data ) { </span> <span>return $response_data->social->linkedIn; </span> <span>}</span>
<span>/** </span><span> * Number of times domain have been shared on Google+ </span><span> * </span><span> * <span>@param <span>object</span> $response_data JSON decoded response body </span></span><span> * </span><span> * <span>@return <span>integer</span> </span></span><span> */ </span> <span>public function google_share( $response_data ) { </span> <span>return $response_data->social->google; </span> <span>}</span>
<span>/** </span><span> * Google PageRank of Domain </span><span> * </span><span> * <span>@param <span>object</span> $response_data JSON decoded response body </span></span><span> * </span><span> * <span>@return <span>integer</span> </span></span><span> */ </span> <span>public function google_page_rank( $response_data ) { </span> <span>return $response_data->google->rank; </span> <span>}</span>
コード説明:最初に、保存されたウィジェットフォーム値(タイトル、ドメイン、APIキー)がデータベースから取得され、変数に保存されます。
ドメインとAPIキーはjson_whois_apiメソッドに渡され、結果の応答本体が$ api_responseに保存されます。 ドメインデータを返すさまざまな方法への呼び出しは、引数として応答ボディ($ api_response)を使用して行われます。<span>/** </span><span> *Domain name servers </span><span> * </span><span> * <span>@param <span>object</span> $response_data JSON decoded response body </span></span><span> * </span><span> * <span>@return <span>string</span> </span></span><span> */ </span> <span>public function domain_nameservers( $response_data ) { </span> <span>$name_servers = $response_data->whois->domain->nserver; </span> <span>return $name_servers->{0} . ' ' . $name_servers->{1}; </span> <span>}</span>

ウィジェットクラスは、Widgets_initアクションにフックされて、WordPressの内部によって認識されることで登録する必要があります。
<span>/** </span><span> * Date domain was created </span><span> * </span><span> * <span>@param <span>object</span> $response_data JSON decoded response body </span></span><span> * </span><span> * <span>@return <span>mixed</span> </span></span><span> */ </span> <span>public function date_created( $response_data ) { </span> <span>return $response_data->whois->domain->created; </span> <span>}</span>
<span>/** </span><span> * Domain expiration date </span><span> * </span><span> * <span>@param <span>object</span> $response_data JSON decoded response body </span></span><span> * </span><span> * <span>@return <span>mixed</span> </span></span><span> */ </span> <span>public function expiration_date( $response_data ) { </span> <span>return $response_data->whois->domain->expires; </span> <span>}</span>
関連リソース
WordPressウィジェットの仕組みについて詳しく知りたい場合は、次の記事に興味があるかもしれません。- WordPress Widget API
- タブ付きのWordPressログインと登録ウィジェットを作成します
- Widgets APIを介してWordPressでウィジェットを作成します ワールドカップ2014 WordPressウィジェットの作成
ウィジェットの構築方法とWordPressサイトに実装する方法をさらに理解するには、GitHubからウィジェットプラグインをダウンロードしてください。
私が言ったように、この記事は、WordPress HTTP APIがプラグインでどのように使用されるかを示すシリーズの最初のものです。
同様のチュートリアルについては、WordPressチャンネルに注意してください。再び会うまで、幸せなコーディング!
ドメインの構築についてよく聞かれる質問とソーシャルデータWordPressウィジェット
WHOISとソーシャルデータのWordPressウィジェットをWebサイトにインストールするにはどうすればよいですか?ドメインWHOISおよびソーシャルデータWordPressウィジェットをインストールするには、WordPressプラグインリポジトリからプラグインを最初にダウンロードする必要があります。ダウンロードしたら、WordPressダッシュボードに移動し、「プラグイン」をクリックしてから「新規追加」、最後に「プラグインのアップロード」をクリックしてインストールできます。その後、ダウンロードしたファイルを選択して、[今すぐインストール]をクリックできます。プラグインがインストールされたら、[アクティブ化]をクリックして使用を開始します。Webサイトでウィジェットの外観をカスタマイズできますか?あなたのウェブサイトのテーマに一致します。プラグインには、ウィジェットのルックアンドフィールを変更するために変更できるCSSファイルが付属しています。好みに合わせて色、フォント、レイアウトを変更することができます。ウィジェットを使用してドメイン情報を検索するにはどうすればよいですか?検索ボックスにドメイン名を入力して「検索」をクリックすることにより、ドメイン情報を検索します。ウィジェットは、ドメインの登録ステータス、所有者情報などを含むドメインのWHOIS情報を表示します。ウィジェットでは、ソーシャルデータを検索することもできます。 Facebook、Twitter、LinkedInなど、さまざまなソーシャルメディアプラットフォームから情報を取得できます。これは、ドメインのソーシャルメディアの存在を理解するのに役立ちます。ウィジェットはすべてのWordPressテーマと互換性がありますか?ただし、特定のコーディングや設計により、うまく機能しないテーマがいくつかある場合があります。問題が発生した場合は、プラグイン開発者にお問い合わせください。
複数のWebサイトでウィジェットを使用できますか?
はい、プラグインをダウンロードしたら、複数のWebサイトで使用できます。ただし、各Webサイトに個別にインストールしてアクティブ化する必要があります。
ウィジェットは定期的に更新されていますか?
ウィジェットは定期的に更新され、WordPressの最新バージョンと互換性があり、新しい機能を追加するか、バグを修正します。 WordPressダッシュボードからの更新を確認できます。
ウィジェットは国際ドメイン名をサポートしていますか?さまざまな国や異なるドメイン拡張機能で登録されているドメインのWHOIS情報を取得できます。
ウィジェットを使用してドメインの可用性を確認できますか?ドメインの可用性を確認してください。ドメインが登録されていない場合、ウィジェットはドメインが利用可能であることを示すメッセージを表示します。ウィジェットで実行できる検索の数に制限が設定されていません。ただし、過度に使用すると、WHOISサーバーによる一時的なIPブロッキングにつながる可能性があり、虐待を防ぎます。責任を持ってウィジェットを使用することをお勧めします
以上がWhoisとソーシャルデータWordPressウィジェットの構築の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

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

人気の記事

ホットツール

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

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

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

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

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

ホットトピック











ブログは、人々が自分の意見、意見、意見をオンラインで表現するための理想的なプラットフォームです。多くの初心者は自分のウェブサイトを構築することに熱心ですが、技術的な障壁やコストの問題を心配することをためらっています。ただし、プラットフォームが初心者の能力とニーズを満たすために進化し続けるにつれて、今まで以上に容易になり始めています。 この記事では、テーマの選択からプラグインの使用まで、セキュリティとパフォーマンスを向上させ、独自のWebサイトを簡単に作成できるように、WordPressブログを構築する方法を段階的に導きます。 ブログのトピックと方向を選択してください ドメイン名を購入したり、ホストを登録する前に、カバーする予定のトピックを特定することをお勧めします。個人的なウェブサイトは、旅行、料理、製品のレビュー、音楽、またはあなたの興味を引き起こす趣味を中心に展開できます。あなたが本当に興味を持っている領域に焦点を当てることは継続的な執筆を奨励することができます

WordPressの記事リストを調整するには4つの方法があります。テーマオプションを使用し、プラグイン(投稿タイプの注文、WP投稿リスト、ボックスのものなど)を使用し、コード(functions.phpファイルに設定を追加)を使用するか、WordPressデータベースを直接変更します。

親カテゴリアーカイブページに子カテゴリを表示する方法を知りたいですか?分類アーカイブページをカスタマイズするときは、訪問者にとってより便利にするためにこれを行う必要がある場合があります。この記事では、親カテゴリアーカイブページに子カテゴリを簡単に表示する方法を示します。サブカテゴリが親カテゴリアーカイブページに表示されるのはなぜですか?親カテゴリアーカイブページにすべての子カテゴリを表示することにより、訪問者にとってより一般的で便利になります。たとえば、本に関するWordPressのブログを実行し、「テーマ」と呼ばれる分類法を持っている場合、「小説」、「ノンフィクション」などのサブ課題を追加して、読者ができるようにすることができます。

最近、ユーザーがお気に入りの投稿をパーソナライズされたライブラリに保存できるようにすることで、ユーザー向けのパーソナライズされたエクスペリエンスを作成する方法を示しました。一部の場所で名前を使用することで、パーソナライズされた結果を別のレベルに引き上げることができます(つまり、ウェルカム画面)。幸いなことに、WordPressにより、ユーザーのログインに関する情報を簡単に入手できます。この記事では、現在ログインしているユーザーに関連する情報を取得する方法を紹介します。 get_currentuserinfo()を使用します。 関数。これは、テーマ(ヘッダー、フッター、サイドバー、ページテンプレートなど)のどこでも使用できます。それが機能するためには、ユーザーをログインする必要があります。したがって、使用する必要があります

過去には、拡張後のプラグインを使用してWordPressの投稿を期限切れにする方法を共有してきました。さて、Activity List Webサイトを作成するとき、このプラグインは非常に便利であることがわかりました。期限切れのアクティビティリストを簡単に削除できます。第二に、このプラグインのおかげで、有効期限後の日付までに投稿を並べ替えることも非常に簡単です。この記事では、WordPressの有効期限後の日付で投稿を並べ替える方法を紹介します。プラグインの変更を反映してカスタムフィールド名を変更するためのコードを更新しました。コメントで私たちに知らせてくれたTajimに感謝します。特定のプロジェクトでは、イベントをカスタムポストタイプとして使用します。今

WordPressは、初心者が簡単に始めることができます。 1.バックグラウンドにログインした後、ユーザーインターフェイスは直感的であり、シンプルなダッシュボードは必要なすべての関数リンクを提供します。 2。基本操作には、コンテンツの作成と編集が含まれます。 WysiWygエディターは、コンテンツの作成を簡素化します。 3.初心者は、プラグインとテーマを介してウェブサイトの機能を拡張でき、学習曲線は存在しますが、練習を通じて習得できます。

ユーザーの1人が、フッターにクエリの数とページの読み込み時間を表示する方法を他のWebサイトに尋ねました。これをウェブサイトのフッターでよく見ることがよくあり、「1.248秒で64クエリ」のようなものを表示する場合があります。この記事では、WordPressにクエリの数とページの読み込み時間を表示する方法を紹介します。テーマファイル(たとえば、footer.php)で好きな場所に次のコードを貼り付けます。クエリエシン

WordPress Webサイトやソーシャルメディアアカウントを自動化する方法をお探しですか? 自動化を使用すると、WordPressのブログ投稿やFacebook、Twitter、LinkedIn、Instagramなどで自動的に共有できます。 この記事では、IFTTT、Zapier、およびUncanny Automatorを使用してWordPressとソーシャルメディアを簡単に自動化する方法を紹介します。 WordPressとソーシャルメディアを自動化する理由 WordPreを自動化します
