領域:WordPress開発への現代的なアプローチ
WordPressのもつれたコードベースに対する私の軽daはよく知られています。あなたが技術的に熟練していない限り、私はその使用に反対することをお勧めします。しかし、私の批判は改善への欲求に由来しています。これは、優れた選択肢が現れ、より論理的で効率的な開発プロセスを提供することを望んでいます。 WordPressを合理化しようとする試みは、私の見解では、肯定的なステップです。
最近、「WordPress開発者のためのフレームワーク」として請求されたThemosisというプロジェクトが浮上しました。この記事では、テンミーとその使用法を調査し、その例プロジェクト、つまり書店アプリケーションを調べます。 キーハイライト:themosisは、WordPressの開発者のフレームワークとして設計された新しいプロジェクトであり、WordPressの混oticとしたプラグインアーキテクチャに開発を簡素化し、構造を課すことを目指しています。
- 従来のフレームワークとは異なり、脅威はWordPressと統合して開発を強化するAPIとして機能します。開発者は、最新のPHP機能(名前空間、クラス、匿名関数)と作曲家を使用してWordPressコンポーネントを構築できます。
- 領域のインストールは、作曲家とWordPressコマンドラインツールに依存しています。 Composerは、最新のWordPressバージョンを自動的に組み込んだThemosisプロジェクトを作成します。 標準のWordPressインストールスクリプトがセットアップを完了します。
- テンミー症はまだ初期段階にあります(バージョン1.0保留中)。その若さにもかかわらず、WordPressのコアの制約内であっても、PHPエコシステム内でより良い設計慣行を促進することが有望です。
- テンミー症の理解
「フレームワーク」という用語は、PHP開発者にとって誤解を招く可能性があります。 WordPressには、すでに多数の不要なコンポーネントが含まれています。フレームワークは通常、ミニマリストの原則と分離されたコンポーネントを順守し、複雑なアプリケーションを構築します。
領域は、伝統的な意味での枠組みではありません。 WordPressと統合して開発を簡素化するが、必ずしもそのサイズを縮小するとは限らないAPIです。テーマ症は、名前空間、クラス、匿名関数、作曲家のサポートなど、最新のPHPを使用してWordPressコンポーネントを作成するためのAPIを提供します。本質的に、テンミー症は、他のプラグインを構築するために使用されるMVC駆動のLaravelにインスパイアされたWordPressプラグインです。 LaravelとPhalconに似た独自のルーター(Laravelスタイルのルート定義)とテンプレートエンジン(スカウト)が含まれており、WordPressサポートが追加されています。 たとえば、テンプレートループ:
データ取得にWordPress APIを使用し、
クラスはWordPressコンテンツループ用に特別に設計されています。 インストール領域のインストールには、作曲家とWordPressコマンドラインツールが含まれます。 Composerとのテーマ症プロジェクトの作成には、最新のWordPressバージョンが自動的に含まれています。標準のWordPressインストールスクリプトがセットアップを完成させます。 公式のインストール手順を参照するか、最初にプロジェクトの例を試してください(以下で詳しく説明してください)。
の例プロジェクト:Bookstoreアプリ
themosisは、書店アプリケーションの例を提供します。
Bookstoreアプリのテスト
それをテストするには、Homesteadが改善されています。新しいサイトを登録してください:
@loop(array('post_type' => 'post', 'posts_per_page' => -1)) <h1 id="Loop-title">{{ Loop::title() }}</h1> <div> {{ Loop::content() }} </div> @endloopホストのファイルに
を追加することを忘れないでください(Homesteadによると、指示が改善されました)。
bookstore.local
リポジトリ(/etc/hosts
)をクローンし、
git clone https://www.php.cn/link/7101e4daaff4511510bbd4e6a0862fb7 themosis_example
http://bookstore.local:8000
セットアップは非常に迅速かつ簡単でした。
パフォーマンスは驚くほど速かった。
- コード試験
- 書店のコードはgithubに存在します:
。 Themosisはプラグインであるため、Bookstoreのコードはプラグインディレクトリ内にあります。
3つの主要なサブフォルダーが存在します:(脅威駆動のWordPressロジック)、(テンシスソースコード - 他のフレームワークを参照)、および
(作曲家の依存関係)。コードには最新のプラクティス(名前空間、クラス、包括的なドキュメント)が組み込まれていますが、マイナーな時代遅れの要素は残っています(例:、PHPタグを閉じる)。
app
src
vendor
<?php defined('DS') or die('No direct script access.');
MVC構造は明確に定義されていますが、2つの親フォルダーにわたる断片化を改善できます。 routes
フォルダー(Laravelと同様)は、同等の構文を使用します。コントローラーはビューから分離されており、モデルはコントローラーによって使用され、データをビューに渡します。 home.controller.php
:
@loop(array('post_type' => 'post', 'posts_per_page' => -1)) <h1 id="Loop-title">{{ Loop::title() }}</h1> <div> {{ Loop::content() }} </div> @endloop
ビューは、トラバーサルにドット表記を使用します(例:pages.home
マップへのマップ)。app/views/pages/home.scout.php
)。
パラメーターを使用した
ルーティング
ルーティングは簡単です。 たとえば、検索ページでは、WordPressの検索機能を直接使用します。このアプローチは、WordPressの本質的に欠陥のある検索機能を抽象化し、より簡単な交換を促進します。
- map: bookstore.local to: /home/vagrant/Code/themosis_example
カスタムページの作成
コントローラーとビューを使用してカスタムページを作成しましょう。
ルートを追加します:
-
routes.php
create
return View::make('pages.home')->with(array( 'promo' => Books::getPromoBook($this->page), 'books' => Books::getPopularBooks($this->bookId), 'news' => News::get(), 'newspage' => get_page_by_path('news') ));
-
pages/test.scout.php
コントローラーを追加( - これにより、ほとんどのフレームワークでは
controllers/Test_Controller.php
の「Hello World」がレンダリングされます。ただし、ThemosisはWordPressに依存しているため、システムにページを追加する必要があります。
// Search page Route::is('search', function(){ return View::make('search', array('search' => $_GET['s'])); });
Route::only('page', 'test', 'test@index');
「Hello World」メッセージは、リロード後にレンダリングします
/test
ページのコンテンツを含めるには、グローバル
およびビュー:
ページを正しくレンダリングします。$post
@include('header') Hello World @include('footer')やや複雑ですが、WordPressコンテンツをレンダリングするための強力なラッパーは構造と明確さを提供し、WordPressの剛性を改善します。 結論
<?php class Test_Controller{ public function index(){ return View::make('pages.test'); } }
themosisは、WordPressプラグインの開発にLaravelのような体験を提供します。 WordPressのプラグインアーキテクチャに非常に必要な構造とカプセル化を導入します。
まだ初期段階(バージョン0.8)ですが、脅威は有望なプロジェクトです。 優れた設計慣行の採用はPHPコミュニティにとって重要であり、WordPressのコアの制限の範囲内であっても、Themosisは貴重な貢献を提供します。
以上がまず、WordPress開発者のフレームワークであるThemosisを見てくださいの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

WordPress開発に適した統合開発環境(IDE)の選択 10年間、WordPress開発のための多数の統合開発環境(IDE)を調査しました。 自由から商業、基本的なものまで、純粋な品種

このチュートリアルでは、ドリブルAPIを活用して、オブジェクト指向プログラミング(OOP)の原則を使用してWordPressプラグインを構築します。 元の意味と構造を維持しながら、明確さと簡潔さのためにテキストを洗練しましょう。 オブジェクトオリ

PHPデータをjavaScriptに渡すためのベストプラクティス:wp_localize_scriptとwp_add_inline_scriptの比較 PHPファイルに静的文字列内にデータを保存することが推奨される練習です。 JavaScriptコードでこのデータが必要な場合は、INCORPORAT

このガイドは、WordPress PDFプラグインを使用して、WordPressの投稿とページにPDFファイルを埋め込み、保護する方法を示しています。 PDFは、カタログからプレゼンテーションまで、さまざまなコンテンツに対してユーザーフレンドリーで普遍的にアクセス可能な形式を提供します。 この方法は

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

人々は、その力と柔軟性のためにWordPressを使用することを選択します。 1)WordPressは、さまざまなWebサイトのニーズに適した、使いやすさとスケーラビリティを備えたオープンソースのCMSです。 2)豊富なテーマとプラグイン、巨大なエコシステム、強力なコミュニティサポートがあります。 3)WordPressの作業原則は、テーマ、プラグイン、コア関数に基づいており、PHPとMySQLを使用してデータを処理し、パフォーマンスの最適化をサポートします。


ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

EditPlus 中国語クラック版
サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

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

MantisBT
Mantis は、製品の欠陥追跡を支援するために設計された、導入が簡単な Web ベースの欠陥追跡ツールです。 PHP、MySQL、Web サーバーが必要です。デモおよびホスティング サービスをチェックしてください。

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

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

ホットトピック









