として WordPress開発者 さまざまなタイプのプロジェクトに携わってきたので、編集またはバグ修正のために既存のWordPressWebサイトを利用するときに私が個人的に経験したいくつかの問題点について説明したいと思います。この記事に記載されているヒントと提案は、これらの痛みを最小限に抑えるか、取り除くことを目的としています。
ほとんどの場合、Webサイトは「一度限りの」問題ではありません。これは、WordPressのサイトだけでなく、すべてのサイトに当てはまります。時々、編集、更新、またはバグ修正に対処する必要があります。これらは、お気に入りの頼りになる開発者が処理します。ただし、場合によっては、ウェブサイトの存続期間を通じて、さまざまな開発者に頼る必要があります。
後者の場合、特に前の開発者がメンテナンスタスクを処理するときにベストプラクティスに従わなかった場合は特に、次の開発者にとって物事がスムーズに進まないことがよくあります。
次の開発者の生活を楽にし、サイトでの作業を気に入ってもらうために、WordPressプロジェクトの今後のメンテナンス作業で考慮すべきいくつかの重要なポイントを見てみましょう。明らかに、開発者の仕事を簡単にすることは、プロセスの工数とお金を節約することにもなります。これは、潜在的なクライアントにとって常に良いセールスポイントです。
これはあまりにも明白に聞こえるかもしれませんが、まず最初に! WordPressサイトを適切かつ定期的にバックアップする必要があります。
これは、現時点でサイトに変更を加えていない場合でも、行うべき最も基本的なことの1つです。すべてのファイルとデータベースダンプを取得して安全な場所に保存することで手動で行うか、自動バックアップオプションを使用することができます。 WordPressバックアッププラグイン 。 WordPressプラグインリポジトリで見つけることができる無料と有料のプラグインがたくさんあります。ほとんどのホスティングプロバイダーがバックアップオプションを提供しているため、サーバーレベルでバックアップオプションをうまく利用することもできます。これは、ホスティングプロバイダーに確認する必要があるものです。
定期的なバックアップを使用すると、クラッシュやミスの後でサイトが再び稼働するという安心感が得られます。また、特に過去のメンテナンス中に発生した可能性があると思われるバグを修正しようとしている場合は、新しい開発者がそれほど面倒なことなく問題を修正するのに役立つ可能性があります。定期的なバックアップは、新しい開発者がプロジェクトを引き継ぐ数か月または数年前に発生した長引く問題を特定して対処するのに役立ちます。
不和チャットボットの作り方
初期の頃に自分でこの間違いを犯したことを認めることを誇りに思っていません。それ以来、多くの開発者がリモートサーバーで直接編集を行っていることに気づきました。開発者に翻弄される機密データとすべてのサイトファイルを心配しない限り、この間違いを永久に回避する必要があります。編集するたびに、開発者のローカルマシンとサーバーの間を行き来するのは非常に非効率的です。
サイトのテキストを少し変更するための小さな編集など、小さな変更であっても、開発者はFTPクライアントの対応するファイル/フォルダーに移動する必要があります(ファイルのアップロードにFTPを使用している場合)。アップロードするファイル。たまにFTP接続に失敗しないことを願っています。一部のWordPressWebサイトには、時間と帯域幅を無駄にすることなく、実際に移動するにはデータが多すぎることを忘れないでください。そして、すべてが正常にアップロードされた後、ブラウザに移動してページを更新する必要があります。これも、そのときのネットワーク/サーバーの速度と状態によって異なります。変更するたびに節約できる分と秒について話しているように見えるかもしれませんが、プロジェクトの過程で、これらの分は数時間の不要な作業につながる可能性があります。
開発者がローカルマシンにサイトをインストールしている場合、編集ははるかに高速になります。開発者は編集を行い、ページを更新するだけで完了します。インターネットに接続されていない洞窟の中に住んでいる場合でも、後で作業して変更をアップロードできます。
懸念している機密データがある場合、またはすべてのデータを開発者と共有することを妨げる法的な理由がある場合はどうなりますか?その場合、この目的のために特別にダミーデータを準備することができます。このデータは、将来のメンテナンスのために取っておくこともできます。
ソフトウェア開発の世界で起こる最も良いことの1つは、オンラインバージョン管理の夜明けです。ファイルを処理するための従来のcPanel / FTPメソッドで実行されているサイトがまだたくさんあるので、この点を取り上げます。彼らはバージョン管理がどれほど甘いかを知らないか、それを知っているが初期設定の努力のためにそれを実装することをためらっています。ただし、実際にはそれほど多くの作業ではなく、難しい作業ではありません。
バージョン管理には、さまざまな作成者による変更の追跡、編集の簡単な元に戻す、各タスクからの変更が他のタスクに干渉しないようにするための独立したタスクごとに個別のブランチを持つ機能など、ファイルの管理に関して多くの利点があります。
外部サーバーにGitをセットアップする必要があります。ほとんどの場合、外部サーバーはホスティングプロバイダーによってプリインストールされています。リポジトリを開始してワークフローを設定するには、サーバーに関する専門知識を持った人が必要になる場合がありますが、この記事の範囲を超えているため、ここでは説明しません。
ボトル(Webフレームワーク)
そして言うまでもなく、ブランチを利用しない場合、実際には「git」しているわけではありません。開発者が開発ブランチですべての作業を実行し、サイトをテストできるように、開発と本番用に少なくとも2つのブランチを作成します。すべて問題がなければ、本番ブランチにプッシュして、ライブサイトで問題がないことを確認します。
不要になったファイルやプラグインを残すのが一般的です。ウェブサイトのライフサイクルを通じてファイルが時間の経過とともに蓄積されると、これは苦痛になります。開発者が時間の経過とともに追加された不要なファイルを削除することを気にしない場合、それがどこから来たのか、そしてそれが現在サイトの一部で使用されているかどうかを追跡するのは困難です。これらの疑わしいアイテムを削除した後、何も壊れていないことを確認するためにサイトをもう一度テストする必要があるため、これはさらに頭痛の種になります。
これは、それに取り組んだ対応する開発者が不要なファイルをすぐに削除することで排除できます。この慣行をすべての開発者に強調することができます。
PHPファイルとプラグインの他に、未使用のメディアファイルもwp-content
を埋めることができます。時間の経過とともにフォルダが作成されます。これは、メディア関連の機能を使用するときに開発者に問題を引き起こす可能性があります。このタスクを簡素化するためのさまざまなプラグインを見つけることができます。一例は メディアクリーナー 。
プラグインは内部のゴミ箱を備えており、ファイルが実際に使用されていないことを確認するために、ファイルを一時的にそこに移動します。チェックすると、永久にゴミ箱に捨てることができます。ファイルをクリーンアップする前に、この記事のポイント1に従う(つまり、バックアップする)ことを確認してください。
あなたはおそらく次のようなプログラミングミームに精通しているでしょう:コードが書かれたとき、それはそれを書いた作者、同僚、そして神によって理解されました。しばらくすると、作者と神だけがそれが何をするかを知っていました。そして今では、作者が適切なコメントを追加しない限り、神だけがそれが何をするかを知っています!
Androidアプリに使用するデータベース
一部の開発者は、コメントに関しては気が進まない、またはまったく怠惰になる可能性がありますが、それは優れた開発環境では必須のプラクティスです。これにより、新しい開発者や同じ開発者が特定のコードブロックの機能を理解するために費やす編集やバグ修正にかかる時間が短縮されます。
関数/クラスまたはコードブロックが明確でない場合は常にコメントを追加する必要があります。たとえば、次の関数を取り上げます。
function stripWhiteSapaces(str) { … Return str; }
上記の関数名はそれ自体を物語っています。また、ユーザーが関数の内部に移動して関数がどのように機能するかを確認する必要はありません。1つのジョブを実行するだけで、空白が削除されます。これで完了です。したがって、この場合、コメントは必要ない場合があります。
ただし、たとえば、複数のパラメーターを受け入れ、フィルター処理された投稿のリストを返す関数がある場合、これは前の関数のように明白なものではありません。パラメータとそのタイプを説明するコメントがあるはずです。また、この関数内のコードブロックを記述する必要がある場合もあります。
簡単に確認するには、WordPressコアからファイルを取得して、WordPressの専門家がどのようにコメントしたかを確認できます。または、詳細については、 公式ガイド これをよく説明しているWordPressから。
リンティングは、コードの記述方法にルールを適用するもう1つの優れた機能であり、コードのフォーマット自体を修正することもあります。これは、優れた便利な機能です。現在使用されているほとんどのIDEにはリンティングオプションが付属しており、さまざまなリンティング構成を追加することで、さらに改善またはカスタマイズできます。
たとえば、IDEとしてVisual Studio Codeを使用する場合、VSCodeはPHP言語の診断に公式のPHPリンター(php -l
)を使用します。言語ごとに個別にルール/制限を構成できます(つまり、PHP、JavaScript、CSSなど)。あなたは見ることができます WordPressコーディング標準 詳細については。
リンティング構成を作成したら、それを適用する必要があります。現在および将来のすべての開発者は、このリンティング構成をIDEに統合して、コードも同じルール/制限に準拠するようにする必要があります。そうでなければ、あなたの努力の多くは無駄になります。
物事の命名方法を扱う標準を考案します。これには、関数/クラス名、変数名、ファイル名、さらにはテンプレートの一部である場合はメディア/イメージ名も含まれます。これは、それらの目的を理解するのにも役立つためです。
重要なポイントのいくつかを考慮してください:
プレゼンテーションデザイナーとは
詳細については、 命名規則 WordPressのベストプラクティスガイドのセクション。
デバッグにはかなりの時間がかかる可能性があり、特に編集やバグ修正に関しては、開発時間の合計で高い割合を占める傾向があります。これは、開発者が可能な限り最も効率的な方法でそれを行っているかどうかに注意する必要があることを意味します。ほとんどの開発者は、Webページの一部の変数を手動でvar_dump
‘することによってこれを行う傾向がありますが、これは最も効率的な方法ではありません。これは、作業の完了後にデバッグコードが適切にクリーンアップされないと、あちこちでジャンクコード行が発生するため、後でプロジェクトに参加する開発者にとって頭痛の種になる可能性もあります。
このデバッグタスクに役立つプラグインがいくつかあります。以下は、WordPress用の一般的なデバッグプラグインの例です。
Web開発に関して言えば、CSSを使用したスタイリングは最も基本的なアクティビティの1つです。残念ながら、それはJSやPHPなどよりも見過ごされ、注意が払われていないことを意味します。しかし、信じられないかもしれませんが、CSSは、将来何かを追加または編集しようとするときに適切にアーキテクチャ化されていないと、多大な問題を引き起こす可能性があります。あなたのサイトが基本的で小さい場合を除いて。
この比較的基本的なスタイリング手法が問題を起こしやすい理由について詳しく知りたい場合は、CSSが煩わしい理由をGoogleで確認するか、 CSSで最も厄介な5つのこと 。
ここに多くの詳細なしで私の側からのいくつかの簡単なヒントがあります:
最終的な考えとして、そしてリストを完全にするために、あなたはあなたのサイトで働いているときに彼らが直面した問題についてあなたの開発者からフィードバックを得ることができます。彼らはあなたのサイトで手を汚したので、彼らはいくつかの良いアドバイスを与えることができるかもしれません。また、以前の開発者が残した障害やダーティコードを指摘する場合もあります。
関連: 現代のWordPress開発にアプローチする方法(パート1)プログラミングでは、リンターを使用して、名前付け、間隔、言語固有の機能などのコーディングパターンをチェックするタスクを自動化し、場合によっては自動的に修正します。そうしないと、手動で行うと時間がかかります。多くの場合、リンターは特定のIDEのアドオンとして提供されます。
バージョン管理により、コードの簡単な改訂、変更の元に戻す、複数の開発者間でのコーディングタスクの分割、各開発者によって行われた異なるブランチでのコード変更のマージが可能になります。バージョン管理のないこれらのタスクは、開発者にとって大きな問題になります。
構成ファイルでWP_DEBUGをtrueに設定すると、トリガーされたファイル内のすべてのPHPエラー、通知、および警告が表示されます。これにより、開発者が問題を修正する手がかりが得られる場合があります。エラーは、ページに直接表示するか、デバッグログファイルに追加することができます。
プレゼンテーションをデザインするとき、どちらが正しいですか?