検索
ホームページCMS チュートリアル&#&プレスWordPress REST APIのカスタムエンドポイントを作成します

このチュートリアルは、カスタムWordPress REST APIエンドポイントの作成を示しています。この機能を追加するために「Twenty Seventeenteen」という子供のテーマを構築し、カスタムAPIエンドポイントを登録します。 WordPress REST APIは、組み込みのルートを超えて拡張されています。デフォルトのルートと同じAPIを使用して、カスタムルートとエンドポイントを作成できます(例:

およびregister_rest_route()クラス)。これにより、他のシステムとのシームレスなWordPressの統合が可能になり、アプリケーション開発プラットフォームとしての機能が強化されます。 WP_Rest_Controllerカスタムエンドポイントは、プラグインまたはテーマ内で作成できます

重要な概念:

カスタムWordPress REST APIエンドポイントは、外部システムとの統合を容易にし、WordPressを強力なアプリケーション開発プラットフォームにします。

これらのエンドポイントは、プラグインまたはテーマに登録できます。子のテーマを作成することは、テーマ固有の機能を追加するための便利な方法です。
  • 関数と
  • クラスは、デフォルトルートの作成を反映してカスタムルートとエンドポイントを作成するために使用されます。
  • 複雑なエンドポイントの場合、効率的なHTTPリクエスト処理のためにコントローラーパターン(拡張
  • )が推奨されます。
  • WordPress REST APIは言語に依存しており、HTTPリクエストと応答が可能なプログラミング言語と互換性があります。 register_rest_route() WP_REST_Controller
  • 子供のテーマの作成:
  • WP_REST_Controller
  • WordPressインストールの
ディレクトリ内で、子供のテーマのディレクトリを作成します。 名前を付けてみましょう

  1. /wp-content/themes twentyseventeen-childファイルを作成:

    cd /var/www/html/wp-content/themes
    mkdir twentyseventeen-child

    Creating Custom Endpoints for the WordPress REST API

    次のヘッダー情報を
  2. に追加します

    style.css

    フィールドは、親テーマのディレクトリ名を指定します。
    touch style.css
  3. wordpress管理パネルで、style.css外観に移動します - >テーマ

    および新しい子供のテーマをアクティブにします。
    /*
     Theme Name:  Twenty Seventeen Child Theme
     description: A child theme of the Twenty Seventeen WordPress theme
     Author:       Ahmed Bouchefra
     Template:     twentyseventeen
     Version:      1.0.0
    */

    Template

  4. 子テーマディレクトリにファイルを作成します。 これは、コードを追加する場所です。

    Creating Custom Endpoints for the WordPress REST API

    カスタムWP-APIエンドポイントの作成:
  5. 特定のカテゴリIDの最新の投稿を取得するルートを作成します。 functions.php

    最初に、ルートが定義されていないため、これは404エラーが返されます。

次のコードを子供のテーマに追加します

cd /var/www/html/wp-content/themes
mkdir twentyseventeen-child

これはregister_rest_route()で使用されます:

  • 名前空間:mytwentyseventeentheme/v1
  • リソースパス(カテゴリIDには正規表現があります):latest-posts/(?P<category_id>d )</category_id>
  • オプション:GETメソッドとget_latest_posts_by_category()コールバック。

名前空間は、プラグイン/テーマ間のルートの競合を防ぎます。 (?P<category_id>d )</category_id>RegexはカテゴリIDを抽出します。

Creating Custom Endpoints for the WordPress REST API

コールバック関数の実装:

さあ、get_latest_posts_by_category()functions.php

に関数を追加します
touch style.css

これにより、category_idを使用してget_posts()をクエリの投稿を取得し、WP_Errorを使用して空のカテゴリを処理し、a WP_REST_Response

を返します。

Creating Custom Endpoints for the WordPress REST API

http://<your_site_domain>/wp-json/mytwentyseventeentheme/v1/latest-posts/1</your_site_domain>(ドメインとカテゴリIDに置き換えます)にアクセスすると、そのカテゴリから投稿を返します。

(消毒、検証、アクセス制限、コントローラーパターン、およびFAQをカバーするチュートリアルの残りの部分は、元と同じ構造に従いますが、長さのために明確さと簡潔さのためにマイナーな言い回しの変化があります。制約は、これらのセクションを繰り返して省略しました。コードの例は既に上記で提供されています。

以上がWordPress REST APIのカスタムエンドポイントを作成しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
WordPressのプラグインエコシステムはCMS機能をどのように強化しますか?WordPressのプラグインエコシステムはCMS機能をどのように強化しますか?May 14, 2025 am 12:20 AM

WordPressPluginsSisificallyScmscmScapabilitivitiationsCustomizationAndFunctionality.1)50,000を超える50,000PluginsallowuserStotailorStotailorsiteforseo、e-commerce.2)PluginsCanextEndCorefeatures、iceadding-customsttypes.3)

WordPressはeコマースに適していますか?WordPressはeコマースに適していますか?May 13, 2025 am 12:05 AM

はい、WordPressはeコマースに非常に適しています。 1)WooCommerceプラグインを使用すると、WordPressはすぐに完全に機能的なオンラインストアになります。 2)パフォーマンスの最適化とセキュリティに注意し、キャッシュとセキュリティプラグインの定期的な更新と使用が重要です。 3)WordPressは、ユーザーエクスペリエンスを改善し、SEOを大幅に最適化するための豊富なカスタマイズオプションを提供します。

YandexのWebマスターツールにWordPressサイトを追加する方法YandexのWebマスターツールにWordPressサイトを追加する方法May 12, 2025 pm 09:06 PM

あなたのウェブサイトをyandexのウェブマスターツールに接続しますか? Google Search Console、Bing、YandexなどのWebマスターツールは、Webサイトの最適化、トラフィックの監視、robots.txtの管理、Webサイトのエラーの確認などを支援します。この記事では、WordPress WebサイトをYandex Webmasterツールに追加して、検索エンジントラフィックを監視する方法を共有します。 yandexとは何ですか? Yandexは、GoogleとBingに似たロシアに拠点を置く人気のある検索エンジンです。 Yandexで優れています

WordPressのHTTP画像アップロードエラーを修正する方法(シンプル)WordPressのHTTP画像アップロードエラーを修正する方法(シンプル)May 12, 2025 pm 09:03 PM

WordPressでHTTP画像アップロードエラーを修正する必要がありますか?このエラーは、WordPressでコンテンツを作成する場合、特にイライラする可能性があります。これは通常、組み込みのWordPressメディアライブラリを使用して画像またはその他のファイルをCMSにアップロードするときに発生します。この記事では、WordPressのHTTP画像アップロードエラーを簡単に修正する方法を示します。 WordPressメディアのアップロード中にHTTPエラーの理由は何ですか? WordPress Mediaアップローダーを使用してファイルをWOにアップロードしようとするとき

メディアボタンを追加することでWordPressで動作しない場合の問題を修正する方法メディアボタンを追加することでWordPressで動作しない場合の問題を修正する方法May 12, 2025 pm 09:00 PM

最近、読者の1人が、WordPressサイトの追加メディアボタンが突然機能しなくなったと報告しました。この古典的なエディターの問題には、エラーや警告が表示されないため、ユーザーが「メディアの追加」ボタンが機能しない理由を知りません。この記事では、WordPressの追加メディアボタンを簡単に修正する方法を示します。 WordPressの「メディアの追加」ボタンが動作を停止する原因は何ですか?古い古典的なWordPressエディターをまだ使用している場合、メディアの追加ボタンを使用すると、画像、ビデオなどをブログ投稿に挿入できます。

WordPress Cookieを設定、取得、削除する方法(専門家のように)WordPress Cookieを設定、取得、削除する方法(専門家のように)May 12, 2025 pm 08:57 PM

WordPress WebサイトでCookieの使用方法を知りたいですか? Cookieは、ユーザーのブラウザに一時情報を保存するための便利なツールです。この情報を使用して、パーソナライズと行動ターゲティングを通じてユーザーエクスペリエンスを強化できます。この究極のガイドでは、プロフェッショナルのようにWordPressCookiesを設定、取得、削除する方法を紹介します。注:これは高度なチュートリアルです。 HTML、CSS、WordPress Webサイト、PHPに習熟する必要があります。クッキーとは何ですか?ユーザーがWebサイトにアクセスすると、Cookieが作成および保存されます。

WordPress 429を修正する方法要求エラーが多すぎますWordPress 429を修正する方法要求エラーが多すぎますMay 12, 2025 pm 08:54 PM

WordPress Webサイトに「429が多すぎるリクエスト」エラーが表示されますか?このエラーメッセージは、ユーザーがWebサイトのサーバーにHTTPリクエストを送信しすぎていることを意味します。このエラーは、エラーの原因を見つけるのが難しいため、非常にイライラする可能性があります。この記事では、「WordPress429ToomanyRequests」エラーを簡単に修正する方法を示します。 WordPress429のリクエストが多すぎるのは何ですか? 「429toomanyRequests」エラーの最も一般的な原因は、ユーザー、ボット、またはスクリプトがウェブサイトにアクセスしようとすることです

WordPressは大規模なWebサイトのCMSとしてどの程度スケーラブルですか?WordPressは大規模なWebサイトのCMSとしてどの程度スケーラブルですか?May 12, 2025 am 12:08 AM

wordpresscanhandlelargewebsiteswithcarefulningandoptimization.1)usecachingtoreduceServerload.2)optimizeyourdatabaseRegularly.3)rivenceCdntodistributecontent.4)vetpluginsandmestoavoidConflicts.5)

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

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

ホットツール

SublimeText3 Linux 新バージョン

SublimeText3 Linux 新バージョン

SublimeText3 Linux 最新バージョン

SublimeText3 英語版

SublimeText3 英語版

推奨: Win バージョン、コードプロンプトをサポート!

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

PhpStorm Mac バージョン

PhpStorm Mac バージョン

最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser は、オンライン試験を安全に受験するための安全なブラウザ環境です。このソフトウェアは、あらゆるコンピュータを安全なワークステーションに変えます。あらゆるユーティリティへのアクセスを制御し、学生が無許可のリソースを使用するのを防ぎます。