別のWordPress開発チュートリアル:ワークフローを自動化する方法

自動化に関するWordPress開発チュートリアル


WordPressの開発者として、最新のテクニックやトレンドを常に把握しておくことは大変なことです。たとえば、自動化を考えてみてください。ワークフローの自動化に関して何ができるのでしょうか。違いますか?さて、この記事はあなたを助けることができます。少しです ただし、通常のWordPress開発チュートリアルとは異なります。自動化できるものは何でも自動化することに焦点を当てています 次のWordPressプロジェクトに取り組むとき.

次のWordPress開発チュートリアルは、一般的な開発サイクルに含まれる手順を示しています。その過程で、特定のプロセスを自動化してリリース時間を短縮するために使用できるソリューションとツールを提案します.

自動化のメリット

自動化について説明する前に、なぜ特定のプロセスを自動化する必要があるのか​​を説明しましょう。.

  • ⏲️オートメーション 時間を節約する, したがってお金。シングルクリックでローカル開発バージョンのWordPressをサーバーと同期すると、時間を節約できると想像してください。.
  • ��次に、冗長なステップの自動化 エラーを回避するのに役立ちます. 変更をサーバーと同期する過程で、誤って間違ったバージョンをアップロードする可能性があります。これはやり直しにつながります.
  • ��️さらに、開発サイクルのさまざまなステップを自動化 トレーサビリティに役立ちます. そうすることで、コードのデバッグに役立ちます。たとえば、サーバーにアップロードされた変更の日付に関する適切なログを取得できます。.
  • ��最後に、自動化は より重要なことに集中する イノベーションのように!冗長で反復的なタスクの負担がかからない場合は、注意を必要とする重要なタスクに時間をかけることができます.

このWordPress開発チュートリアルは、最初に冗長なステップを見つけ、それからそれらを自動化するのを助けることにより、より高い効率を達成するのに役立ちます.

開発環境を自動化する

次のシナリオでは、毎回手動で開発環境を作成する必要があると想像してください。

  • プロジェクトを始める
  • 新しい開発マシンに移動する
  • 新しいチームメンバーがいる

ソフトウェアとコマンドのリストを作成することは、自動化の最初のステップです。ただし、各ステップを手動で実行するとかなりの時間がかかり、エラーが発生しやすくなります。したがって、そのようなリストは環境をセットアップするにはまだ不十分です.

Docker 要件に基づいて、新しいマシンで開発環境をセットアップするのに役立つサービスです。 Dockerはコンテナーの概念を導入しています。コンテナは、開発環境で作成された実質的に閉じたシステムです。 Dockerを使用すると、誰かがサーバー上のソフトウェアの一部を更新し、何も機能しない状況に陥ることはありません!

ドッカー

最初に、開発環境を定義します。これは、新しいマシンに必要なものを正確に指定します。次に、新しいマシンでコマンドを実行してプロセスを開始します–とても簡単です!

ここにガイドがあります WordPress用のDockerのセットアップ. さらに、こちらは WordPress用の簡単なDocker設定ファイル.

Dockerには1つの欠点があります。Windowsベースの開発環境(SQL Server、.NET、VisualBasicなど)を使用している場合、Dockerを使用してそれを実装することはできません。.

継続的インテグレーションによるバージョン管理

自動化に関するこのWordPress開発チュートリアルの次のステップは、コード管理に焦点を当てることです。複数の開発者が同時に同じコードで作業する場合、通常、次のようなバージョン管理のフォームを使用します ギット または Mercurial. これは、WordPress開発チュートリアルです。 バージョン管理.

水銀

コード管理ソフトウェアを使用する場合、開発者は中央リポジトリのコピーを作成できます。リポジトリを改善し、変更を送信して元のコードとマージできます。一般的なリポジトリでは、1日に数百から数千もの変更が行われる場合があります。開発者がコードをマージしようとすると、さまざまな競合が発生する可能性があります。最も極端なケースでは、マージ中に問題を解決するのにかかる時間が、最初の改善自体を行うのにかかる時間よりも長い場合があります。.

継続的インテグレーションとは、開発者の作業を頻繁にマージすることでこのシナリオを回避することです。ただし、マージは思ったほど簡単ではありません。コードをコミットする前に、開発者によるコンパイルとテストが含まれます。通常、コードが中央リポジトリにプッシュされると、ビルドサーバーはコードに対してこれらのチェックを実行します。このプロセスにより、無駄の原因の1つであるやり直しが減り、コストと時間を節約できます。テストとビルドの頻度はさまざまですが、現在、このプロセスはコミットのたびに実行されます.

Travis CIとの継続的な統合

travis-ci

トラビスCI オープンソースリポジトリの無料バージョンを提供します。あなただけのプライベートプロジェクトのために支払う必要があります。この例では、GitHubでプロジェクトのデモを行います。 Travisに登録したら(GitHubから登録することをお勧めします)、ビルドを開始するには次の手順を実行する必要があります。

  • GitHubリポジトリをアクティブ化する
  • リポジトリのルートディレクトリに.travis.ymlファイルを追加します
  • リポジトリにプッシュしてTravisでビルドする

あなたの Travisプロフィール, Travisでテストするリポジトリをアクティブ化します.

次に、サンプルリポジトリのWebスクレイピングをアクティブ化する例を示します。

Travisでのリポジトリのアクティブ化Travisでのリポジトリのアクティブ化

リポジトリをアクティブ化した後、.travis.ymlファイルをリポジトリに追加する必要があります。ファイルの内容は次のとおりです。

言語:python
python:
– "2.6"
– "2.7"
#依存関係をインストールするコマンド
#インストール: "pip install -r requirements.txt"

#テストを実行するコマンド
スクリプト:python tests.py

テストする言語(Python)とそのバージョンを指定する必要があります。インストールする依存関係がある場合は、requirements.txtファイルにそれらをリストする必要があります。このリポジトリではダミーテストのみが実行されるため、要件の行はスキップされます。コメントアウトされていない場合、これらの要件は、テストを実行する前にTravisによってビルド環境にインストールされます。最後に、テストを実行するコマンドを指定します。のようなオープンソースのリポジトリ e-シダダニア より詳細な.travis.ymlファイルがある.

コードが完了したら、コードをコミットしてGitHubにコードをプッシュします。テスト結果はリポジトリページで確認できます。テスト結果が記載されたメールも送信されます。プロファイルページから別のビルドをトリガーして、ビルドがリアルタイムで行われていることを確認することもできます。

Travisで成功するTravisで成功する

テーマ開発の自動化

この珍しいWordPress開発チュートリアルで次に取り上げるのは、テーマ開発です。 WordPressディレクトリで変更するコードにはコード管理システムを使用するだけで十分ですが、テーマの開発中の中間ステップは自動化することができます。!

少し間を置いて、テーマの変更を確定した後、テーマ開発プロセスに典型的ないくつかのタスクをリストアップします。

  • CSSプリプロセッサコードをCSSにコンパイルする
  • CSSファイルの縮小
  • テーマに新しい画像を追加する
  • 画像を最適化する
  • 子テーマを生成する
  • 変更を監視し、リポジトリを更新する

これらのタスクはすべて冗長であり、自動化の範囲を示しています。その方法は次のとおりです。

Gulpでテーマ開発を自動化

人気のツールに焦点を当てましょう, ガップ, テーマの開発と展開を自動化します。 Gulpは、上記のすべてのプロセスを自動化するのに役立つツールキットです。 Gulpは、Node.jsサーバーで実行されるJavaScriptベースのツールです。.

Gulpjs

Gulpをインストールするには、 Node.js NPMがインストールされています。その後、ターミナルで次のコマンドを実行してGulpをインストールできます.

npm install gulp -g

Gulpでテーマを操作するには、通常は/ wp-content / themes /にあるテーマディレクトリに移動し、ターミナルでコマンドnpm initを使用してNPMを初期化する必要があります.

次に、package.jsonファイルにGulpを追加する必要があります.

{
"名前": "私のテーマ",
"バージョン": "1.0.0",
"解説": "Gulpを使用したWordPress開発チュートリアルの自動化",
"著者": "自分の名前",
"devDependencies":
{
"むしゃむしゃ": "^ 3.9.1"
}
}

Gulpがディレクトリで初期化されたら、次を定義する必要があります Gulpタスク functiontask()の使用–各タスクはGulpが実行する自動化ステップです。これは Gulpを使用したタスクの作成に関する詳細なガイド.

テーマ開発を自動化する方法に興味がありますか?エンジニアリングチームの旅に出るチュートリアルがあります.

継続的な展開による最終製品のテスト

このWordPress開発チュートリアルの最後のステップは、最終製品のテストを自動化することです。要するに、あなたはあなたのウェブサイトがデバイス全体で正しくレンダリングされるかどうかを評価しようとします.

なので 最近のDevOpsのトレンドは, ベストプラクティスは、継続的インテグレーションを超えることです。継続的インテグレーションを正常に実装したら、疑問に思うかもしれませんが、中央リポジトリにあるコードは常に正常に動作しているのではないでしょうか。論理的な答えは「はい」です。したがって、ビルドが行われたときにソフトウェアの最新バージョンをリリースすることは理にかなっています!

すべての状況で意味がありますか?いいえ、特にクライアントが継続的な更新を望まない場合は。ただし、これは、コードを出荷できる状態に保つという哲学です。独自の製品を開発している状況では、継続的な展開が最も効率的です。 Googleでは、コミットしてからコードが公開されるまで約8分かかります!

Webアプリケーションを構築している場合、コンパイルはそれがデバイス間で機能することを意味しない場合があります。このような場合、次のようなツール BrowserStack 重宝します。さまざまなオペレーティングシステムを実行しているさまざまなメーカーの実際のデバイスでWebアプリケーションを実行して、エンドユーザーに確実に機能する.

browserstack

BrowserStackによる継続的な展開

BrowserStackでは、Pythonでテストを実行できます。 セレン, PIP経由でインストールする必要があります.

pipインストールセレン

Android v7.1を実行するGalaxy Note 8を使用して簡単なテストを実行してみましょう。以下のコードで提供したリンクは、BrowserStackに登録すると取得できます(無料の試用版があります)。オプションを選択すると、BrowserStackがサンプルコードをセットアップします。.

BrowserStackでの最初のテストのセットアップBrowserStackでの最初のテストのセットアップ
セレンからインポートwebdriver
selenium.webdriver.common.keysからキーをインポート
selenium.webdriver.common.desired_capabilitiesからのインポートDesiredCapabilities

desired_cap = {
‘browserName’: ‘android’,
「デバイス」:「Samsung Galaxy Note 8」,
‘realMobile’: ‘true’,
‘os_version’: ‘7.1’
}

ドライバー= webdriver.Remote(
command_executor = ‘http:// shaumikdaityari1:[email protected]:80 / wd / hub’,
desired_capabilities = desired_cap)

driver.get("https://www.codeinwp.com/")
elem = driver.find_element_by_name("q")
elem.send_keys("BrowserStack")
elem.submit()
印刷(driver.title)
driver.quit()

実行するには、単にファイルを実行するか、ターミナルでコマンドを実行します.

python browser_test.py

端末からテストが成功したかどうかを確認できます。さらに、BrowserStackアカウントに戻って、実際に実行された方法のビデオを確認することもできます。.

BrowserStackテストのビデオとログBrowserStackテストのビデオとログ

モバイルブラウザでのテストを自動化できます。 BrowserStackを使用すると、独自のサーバーでテストを実行することもできます。 ドキュメント.

モバイルアプリケーションを作成している場合は、特定のツールを使用してさまざまなデバイスでテストする必要があります。それは可能です TestGrid, さまざまなデバイスでアプリを実行できます.

この異常な(自動化された)WordPress開発チュートリアルに関する最終的な考え

これで、WordPress開発中のタスクの自動化に関するこのチュートリアルは終わりです。自動化のメリットと、開発サイクルで自動化できるさまざまなタスクについて説明しました.

WordPressの開発ワークフローを自動化するために他の手法やツールを使用していますか?以下のコメントであなたのトリックを共有してください.

WordPressサイトの高速化に関する速習コースに参加することを忘れないでください。いくつかの簡単な修正により、ロード時間を50〜80%も短縮できます。

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map