検索
ホームページCMS チュートリアル&#&プレスWordPressプラグインボイラープレートを使用して開発をスピードアップします

WordPressプラグインの初心者:WordPressプラグインボイラーの使用

WordPressプラグインの開発には、学習曲線が低く、プラグインを構築する方法だけがありません。プラグインは、Hello Dollyと同じくらい簡単で、さまざまなニーズや機能に基づいて非常に複雑な方法で構築できます。 WordPressプラグインボイラープレートは、次の優れたプラグインを構築するのに役立つ標準化された高品質の基礎を提供するように設計されています。このシリーズの最初の部分では、ファイルとフォルダーの構造、およびボイラープレートのコード組織など、ボイラープレートを深く探索します。

Speed up Development Using the WordPress Plugin Boilerplate

キーポイント

  • WordPressプラグインボイラープレートは、低い学習曲線を備えたWordPressプラグインを構築するための標準化された高品質の基礎を提供し、シンプルまたは複雑なプラグイン構造に柔軟に使用できます。
  • ボイラープレートの3.0.0バージョンは、プラグイン間のコード組織と内部の懸念の分離に大幅な改善をもたらし、GITリポジトリのクローニングまたはGitHubリポジトリからZIPファイルをダウンロードすることで簡単に取得できます。
  • ボイラープレートは、推奨されるWordPressコーディングおよびドキュメント標準に従い、便利なスターターガイドとツールの推奨事項を提供し、さまざまな機能の5つのデフォルトクラスが含まれており、プラグイン開発者にとって優れた出発点となります。

背景

WordPressプラグインボイラープレートは、WordPressプラグインを構築するための標準化されたオブジェクト指向のアプローチを提供するために、Tom McFarlinによってもともと開始されました。ボイラープレートはプラグインAPIの上に構築されており、WordPressが推奨するコーディングおよびドキュメントの基準に従うため、安全で信頼できる環境にいることを確認できます。ボイラープレートは最近バージョン3.0.0に更新され、コード組織の大幅な改善とプラグインの内部焦点のさらなる分離がもたらされました。レガシーボイラープレート(v2.6.2)を使用したプラグインの開発にすでに精通している場合は、新しいフォルダー構造を含む最新バージョンで新しいものを再学習するのに時間がかかる場合があります。このボイラープレートは、トムマクファーリン自身(執筆時点で)によってもはや維持されておらず、彼はバトンをデビンヴィンソンに渡しました。開発はまだ計画どおりに継続されているため、質問がある場合はGitHubリポジトリに自由に報告してください。また、貢献を歓迎します。

テンプレートのコピーを取得

WordPressプラグインのボイラープレートコピーを取得する最も簡単な方法は、GITリポジトリ自体をクローンすることです。

<code>git clone https://github.com/DevinVinson/WordPress-Plugin-Boilerplate.git</code>

またはGitHubリポジトリからzipファイルをいつでもダウンロードできます。バージョン3.0.0がリリースされるため、プラグインをWP-Content/Pluginsディレクトリに直接コピーするだけではありません。これは、プラグインの実際のソースコードがルートディレクトリに含まれていないが、実際にはトランクと呼ばれるサブディレクトリにあるためです。今これについて心配しないでください。この記事の後半で新しいフォルダー構造について説明します。 readme.mdファイルは、ボイラープレートを適切に取り付ける方法の完全な説明を詳述します。要するに、あなたは:

  • トランクディレクトリをWPコンテンツ/プラグインフォルダーにコピーします
  • ボイラープレートディレクトリ全体をコピーし、トランクサブディレクトリのWPコンテンツ/プラグイン//へのシンボリックリンクを作成します。シンボリックリンクを作成すると、使用しているオペレーティングシステムに依存します。

これを行った後、管理パネルのプラグインのリストにWordPressプラグインボイラープレートと呼ばれるプラグインを見つける必要があります。プラグインをアクティブにして開始するだけです!

オンラインジェネレーターを使用してプラグインをカスタマイズします

アクティブ化されると、少なくとも今のところは基本的に何もしない「通常の」プラグインがあります。また、検索を実行し、ボイラープレートコードベース全体で操作を交換する必要があります。これは非常に退屈で時間がかかる場合があります。幸いなことに、Enrique Chavezはプロセスを自動化する非公式ジェネレーターを作成しました。 https://www.php.cn/link/6340831392e9cd8af9598274f4b3c5c0にアクセスし、ページの下部にあるフォームに記入して、ワードプレスプラグインのテンプレートのパーソナライズコピーを生成します。

フォルダー構造

WordPressプラグインボイラープレート3.0.0が古いバージョンと比較してどのように整理されているかを詳しく見てみましょう。前述のように、実際のプラグインコードは、ルートディレクトリではなく、トランクと呼ばれるサブディレクトリに含まれています。これは、アセット、ブランチ、トランクの3つの主要なディレクトリを含む公式のWordPressプラグインリポジトリで使用される標準に従うことです。ボイラープレートは、すでに2つの資産とトランクを提供しています。これがボイラープレートに含まれる完全なディレクトリとファイルです(執筆時点で):

<code>git clone https://github.com/DevinVinson/WordPress-Plugin-Boilerplate.git</code>

以下は、各ファイルとフォルダーの関数の簡単な説明です。

  • .gitignore:GITリポジトリに存在しないでください。 .gitignore
  • :変更日を含むボイラープレートの変更の標準変更ログ。 CHANGELOG.md
  • :インストール手順がリストされている便利なスターターと、ツールの推奨事項や謝辞などの他の部分。 README.md
  • :このディレクトリには、WordPressプラグインリポジトリにプラグインを公開することにしたときに提供する必要がある推奨リソースが含まれています。このディレクトリに含まれるすべての画像は、公開に推奨される解像度です。 assets
  • :これは、開発する実際のプラグインです。コードベースを管理機能と公開機能に分割するいくつかのフォルダーがあります。各サブディレクトリの意味を詳細に説明します。 trunk
    • :ディレクトリには3つのディレクトリが含まれています。すなわちadminadmincssです。名前が示すように、すべての管理指向の機能をここに配置する必要があります。デフォルトでは、jsおよびpartialsがWP-Adminに追加されます。 plugin-name-admin.jsは、管理固有のフックを定義できる一般的な機能を提供します。 plugin-name-admin.css class-plugin-name-admin.php
    • :このディレクトリは、
    • ディレクトリによって提供される機能と非常に似ています。唯一の違いは、publicディレクトリがすべてのパブリックに向かう機能コードベースを保存するために使用されることです。 admin public
    • :プラグインに翻訳機能を提供できる
    • ファイル。 languages .pot
    • :これはおそらく、ほとんどすべての魔法が起こる場所です。デフォルトでは、5つの開始クラスがあり、次のセクションで説明します。
    • includes
    • :デフォルトでGPL V2ライセンスのコピーが含まれています。
    • LICENSE.txt
    • :プラグインREADMEファイルの開始点。このファイルは、WordPressプラグインリポジトリに優れたプラグインページを提供するためにさらに記入できるすべてのセクションをカバーしています。
    • README.txt
    • :プラグインのエントリポイント。ここでは、好みに応じて変更できる一般的なプラグインファイルヘッダーが含まれています。プラグインがアクティブ化および/または非アクティブ化されているときに機能を含める必要がある場合、このファイルにも
    • およびplugin-name.phpが登録されます。 register_activation_hook register_deactivation_hook
クラスが含まれています

前述のように、ディレクトリには5つのデフォルトクラスがあります。各クラスが何をしているのか見てみましょう:

  • class-plugin-name-activator.php:このクラスは、プラグインのアクティベーション中にインスタンス化されます。静的メソッドは1つしかなく、activate()に登録されています。カスタムテーブルの作成やデフォルトオプションの保存など、プラグインがアクティブになったときに特定のアクションを実行する必要がある場合はいつでもこのクラスを使用します。 register_activation_hook
  • :対応するカテゴリのclass-plugin-name-deactivator.php。また、プラグインの非アクティブ化中に任意の機能を実行するために使用できる静的メソッドは1つだけです。 class-plugin-name-deactivator.php deactivate()
  • :プラグインi18n関数の開始点。プラグインテキストフィールドを保存するプロパティがあります。このプロパティは、パブリックメソッドを使用して設定できます。最後に、プラグインがロードされるたびに、このクラスの
  • メソッドが呼び出されます。 class-plugin-name-i18n.php $domainset_domain():テンプレートで最も重要なクラス。プラグインに登録されているすべてのフックが保存される2つのプロパティload_plugin_textdomain()
  • が含まれています。アクションまたはフィルターを
  • およびclass-plugin-name-loader.phpプロパティに追加するために、2つの単純なラッパー関数$actionsおよび$filtersを提供します。これは、そのようなクラスが実際に直接登録していないため、WordPressのデフォルトadd_action()およびadd_filter()関数と混同しないでください。すべてのフックは、$actionsと呼ばれる別の方法でのみ登録されます。 $filters add_action()add_filter():すべての部分を接着するクラス。プラグインの名前やバージョンなど、プラグインに関する重要な情報が含まれています。さらに、上記の4つのクラスを含むrun()メソッドを使用して依存関係をロードし、プラグインテキストフィールドは
  • メソッドを使用して設定されます。以前に登録されたすべての管理フックとパブリックフックもここで定義できます。また、このクラスは、プラグイン名を返すように
  • などの簡単なGETメソッド、現在のプラグインバージョンを返すように、class-plugin-name.phpのインスタンスを保持するためのメソッドを提供します。 load_dependencies() set_locale() get_plugin_name()get_version()結論get_loader()class-plugin-name-loader.php 要するに、WordPressプラグインボイラープレートは、プラグイン開発者に最適な出発点を提供します。これにより、推奨されるWordPressコーディング標準とWordPressドキュメント標準に従うため、最初から正しいパスにいることがわかります。さらに、WordPressプラグインリポジトリへの公開は、必要なもののほとんどをすでに提供しているため、簡単になります。コード組織とフォルダー構造に精通したら、このシリーズの第2部でWordPressプラグインボイラープレートを使用して実際のプラグインを開発する方法を探ります。

以上がWordPressプラグインボイラープレートを使用して開発をスピードアップしますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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

wordpressisutableforbusinesssettings.1)ituportse-commercewithwoocommerce、productmanagementandpaymentprocessing.2)itservesasacmsforcoporateblogs、entancingseoandengagement.3)customizationibultiblewithwithwithsemesandplugins.3)

WordPressに適していないWebサイトは何ですか?WordPressに適していないWebサイトは何ですか?May 07, 2025 am 12:10 AM

wordpressisnotidealforhigh-trafficwebsites、customandcomplexApplications、セキュリティ感覚化、リアルチメダタプロセシング、および高地識別型インターフェース、forhhigh-trafficsites、usenext.jsorcustomsolutions; forplecluctlications、optfordjangaNgoRub

WordPressでブログを作成できますか?WordPressでブログを作成できますか?May 06, 2025 am 12:03 AM

はい、YouCanbuildAblogWithWordPress.1)BetWeenWordPress.comforbeginnersorwordpress.orgformorecontrol.2)SelectAtheMetopersuerizeUourBlog'slook.3)usepluginStoenHanceFunctionality、likeSeoandsocialmedientegreation.4)

WordPressはCMSプラットフォームとしてどのくらい安全ですか?WordPressはCMSプラットフォームとしてどのくらい安全ですか?May 05, 2025 am 12:01 AM

wordpresscanbesecureifmanagedperly.1)keepthewordpresscoreupdatedtopatchvulnerabilities.2)vetandupdatepluginsandとthemes from-reputabless.3)emforcestrongwordsandusetwo-factoruthentication.4)

WordPress CMSでどのようなWebサイトを構築できますか?WordPress CMSでどのようなWebサイトを構築できますか?May 04, 2025 am 12:06 AM

wordpresscanbuildvarioustypesofwebsites:1)personalblogs、easytosetupwithemesandplugins.2)businesswebuilders.3)e-ocommerceforseamlessIntegration.4)コミュニティサイトを使用しているe-ocommerceforseamlessintegration.4)

WordPressをCMSとして使用することの長所と短所は何ですか?WordPressをCMSとして使用することの長所と短所は何ですか?May 03, 2025 am 12:09 AM

wordpressisapowerfulcmswithsifisifistadvantageandChallenges.1)それは、suser-friendlyandcustomizable、yeal forbeginners.2)その増加性をカンロードすることを抱えています

WordPressは、他の人気のあるCMSプラットフォームと比較してどうですか?WordPressは、他の人気のあるCMSプラットフォームと比較してどうですか?May 02, 2025 am 12:18 AM

wordpressexcelsineaseofuseandaptaptability、makeitideal forbeginnersandsmalltomedium-sizedinesses.1)Easeofuse:wordpressisuser-frendly.2)セキュリティ:DrupalleadSwithSecurityFeatures.3)パフォーマンス:GhostoffersexcellencedueTonode.4)scal

WordPressを使用してメンバーシップサイトを構築できますか?WordPressを使用してメンバーシップサイトを構築できますか?May 01, 2025 am 12:08 AM

はい、YouCanuseWordPressTobuildAmberShiTeThite.Hore'show:1)usepluginslikememberpress、paidmembersubscriptions、orwooocommerceforusermanagement、contentaccesscontrol.2)ensurecontententrectectionwithdatedditedditionalsurationuresures

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 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

mPDF

mPDF

mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。

メモ帳++7.3.1

メモ帳++7.3.1

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

SublimeText3 中国語版

SublimeText3 中国語版

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

Safe Exam Browser

Safe Exam Browser

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

SublimeText3 英語版

SublimeText3 英語版

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