検索

WordPressとJamstack

最近、NetlifyのVirtual Jamstack Conferenceでパネルをホストしました。これには、Netlify CEOのMatt Biilmanと自動ファウンダーMatt Mullenwegが含まれます。議論は、多くの人から「Jamstack vs. WordPressの論争」と見なされていました。

私は個人的にこれについて多くの考えを持っています、そして、私はモデレーターよりもコメンテーターになるのにもっと適していると思います。これは今の私のお気に入りの技術的な議論の1つです!ブログを書くことを許可してください。

ステートメント: AutomatticとNetlifyはどちらもこのWebサイトのアクティブなスポンサーです。私は両方を使用するいくつかの制作サイトを持っています、そして正直なところ、私はそれらすべてを愛しています。これは私が詳しく説明しようとする主要なポイントです。私はたまたまWordPressのWebサイトでこの記事を書いて公開しています。

歴史レビュー

  1. リチャード・マクマナスは、「WordPressの共同設立者Matt MullenwegはJamstackのファンではない」という記事を発表しました。マットは、「Jamstackを採用している大多数の人にとって、それは反発です」とマットは言いました。
  2. Matt Biilmannは、「Mullenweg and Jamstackについて - 後方または未来?」という記事に、「WordPress時代の終わり」というタイトルのセクションで答えました。
  3. この期間中、人々はコメントしました。 Netlifyの理事会メンバーであるOhad Eder-Pressmanは、公開書簡を書きました。 Sarah Goodingは、WP Tavern(Matt Mullenwegが所有)でいくつかの活動を要約しました。私も関与しています。
  4. Matt Mullenwegは彼のコメントを明らかにし、いくつかの新しいコメントを追加しました。

議論は2020年のJamstack Virtual Conferenceで開催されました。現在、パブリックビデオレコードはありません(ごめんなさい)。

アーキテクチャの比較

JamstackとWordPressを比較するのは少し奇妙です。本当に匹敵するのは、ウェブサイトを構築するときに選択するすべての可能な方法であるということです。この投稿のほとんどは、これを念頭に置いて、この方法で2つを比較します。それらを直接比較できない理由は次のとおりです。

  • Jamstackは、CDNでの静的ファイルの使用を促進し、JavaScriptがアクセスして動的なニーズを満たすためにサービスを使用するアーキテクチャの概念の幅広い説明です。
  • WordPressは、ランプアーキテクチャに基づいたCMSです。

2つはまったく同じではありません。

当分の間、アーキテクチャにのみ焦点を合わせる場合、比較するオブジェクトは次のとおりです。

  • 静的ホスティングサービス
  • ランプ

静的サービスの例は、Netlifyをホスティング(静的)に使用し、サービスを使用して実行する必要がある動的操作を行うことです。 Netlify独自のフォームと認証機能とデータストレージにHasuraを使用するかもしれません。

ランプアーキテクチャでは、MySQLを使用してデータを保存するため、外部サービスを使用する必要はありません。 PHPを使用することもできます。したがって、これ(およびオープンソースソフトウェア)を使用すると、認証に必要なものがすべて揃っています。しかし、それはあなたがサービスを決して使用しないという意味ではありません。サーバー上のテクノロジーをすでに持っているため、サービスの使用頻度が低いだけです。

マットB.コールランプアーキテクチャ「モノマーアーキテクチャ」。 Matt M.はこれに反対し、それを「統合方法」と呼びました。私はコンピューターの科学者ではありませんが、両方の声明が理にかなっていると思います。これがウィキペディアからの説明です:

[…]モノリシックアプリケーションは、ユーザーインターフェイスとデータアクセスコードがプログラムに組み合わされる単一層ソフトウェアアプリケーションを説明しています。

この定義により、WordPressはモノリシックな建築のように見えますが、ウィキペディアの記事は続きます。

[…]モノリシックアプリケーションは、モジュール式になるように設計されていないソフトウェアアプリケーションを説明しています。

この観点から、WordPressはモノリシック建築の定義を満たしていないようです。 WordPressのフックおよびプラグインアーキテクチャはモジュラーです。 ?

この2人の大物がこの詳細について議論しているのを聞くのは興味深いでしょうが、ソフトウェアはソフトウェアです。自己ホストされたWordPress Webサイトは、完全なテクノロジースタックを備えたサーバーで実行されます。このサーバーを最大限に活用することは理にかなっています(つまり、統合)。 Jamstackメソッドでは、サーバーは抽象的です。あなたがする必要がある他のすべてのことは、異なるサービス(つまり、統合されていない)に分割されます。

WordPressメソッドは、外部サービスを使用しないという意味ではありません。両方のアーキテクチャでは、StripeなどのeコマースAPIを使用できます。強力なメディアストレージやサービスには、Cloudinaryなどのサービスを使用できます。 WordPressのJetPackサービス(私が使用し、愛する)でさえ、Asset CustodyとSearch Technologiesをクラウドサーバーに移動することにより、サードパーティサービスのように実行される自己ホストのWordPress Webサイトに大きな力をもたらします。両方のアーキテクチャは、テクノロジーのコレクションです。

どちらのアーキテクチャも「カードの家」ではなく、他の建築よりも脆弱ではありません。すべてのWebサイトは、「その強さは最も弱いリンクに依存する」というメタファーを適用する場合があります。 WordPressプラグインが間違ったバージョンを公開するか、アップロード時に何らかの形で壊れている場合、修正するまでWebサイトに問題を引き起こす可能性があります。サーバーレスデータベースのAPIキーが無効である場合、修正するまでJamstack Webサイトに問題がある可能性があります。 Stripeがダウンした場合、サービスを再開するまで、どのタイプのWebサイトでも製品を販売することはできません。

価格設定

WordPress.comには無料プランがあり、これは間違いなくウェブサイトを構築する場所です。 (私にはいくつかあります。)ただし、1か月あたり25ドルのビジネスプランを使用している場合を除き、実際には開発者レベルの機能にアクセスできません。自己ホストされたWordPress自体はオープンソースで無料ですが、自己ホストのWordPress Webサイトを無料で立ち上げる場所を見つけることができません。それは低価格で始まり、その後徐々に増加します。 WordPressを実行するには、ランプホスティングが必要です。ここにかなり安いホスティング計画があります:

  • Bluehostの「共有」計画は、月額3.95ドルから始まります。
  • Flywheelの最低計画は1か月あたり14ドルです。 (このWebサイトでは、Flywheelのプレミアムプログラムを使用しています。)
  • Media TempleのWordPress固有のホスティングは、月額20ドルから始まります。 (このウェブサイトは、長い間Media Templeのプレミアムプログラムを使用してきました。)
  • Automaticのプレス可能なサービスには、月額25ドルから始まる計画があります。

最初からお金がかかります。

Jamstackは無料で開始するためにより一般的であり、その後、さまざまな時点でコストを負担します。 Jamstackは比較的新しいため、市場はまだ探求しているように感じます。

  • Vercelは、チームメンバーやパスワードで保護されたWebサイトなどの機能が必要になるまで無料です。パスワードで保護された単一のウェブサイトは、月額150ドルです。追加料金なしでApacheを使用して任意のサーバーに基本認証を追加できます。
  • Netlifyは非常に似ており、より高い計画で機能を解除し、分析(月額9ドル)や認証(5,000人のアクティブユーザーの場合は月額99ドル)などのペイパーサイト機能を提供します。
  • AWS Amplifyは無料で開始されますが、AWSのすべてと同様に、使用量は、ビルド分、ストレージ、帯域幅など、多くのレベルで数量ベースのベースで請求されます。 Webアプリケーションには、1日に10,000人のアクティブユーザーがおり、月に2回更新され、1か月あたり65.98ドルかかるという計算の例があります。
  • Azure Static Webアプリはまだ価格設定をリリースしていませんが、ほぼ間違いなく無料のティアまたは無料で使用できるか、どういうわけかがあります。

このすべては、NetlifyがJamstackスペースの唯一のプレーヤーではないことを思い出させます。 Jamstackは、静的ホスティングサービスを意味します。

Jamstackのような一般的な声明を作成することはできません。これは、Webサイトの使用とWebサイトのニーズに大きすぎます。高い使用法と多くの高度なサービスのために、Jamstack(ServerLessのように)は非常に高価になる可能性があります。 Jamstack氏によると、ビジネスの価格は月額3,000ドルから始まり、認証、フォーム、メディア処理などの機能を取得できますが、CMSまたはデータストレージを取得することはできません。

このWordPressサイトはエンタープライズグレードではありませんが、CloudFlareがホストに直接帯域幅を減らすのに役立つと仮定して、ジェットパックのメディアホスティングと検索機能の処理に役立つと仮定して、サーバーには月に約1,000ドルが必要であると伝えることができます。 MailChimpはニュースレターを送信します。 Wufooは私たちのフォームをサポートしています。また、Advanced Custom Fields ProやWooCommerceアドオンなどの有料プラグインもあります。それだけではありません。合計は1か月あたり数千ドルです。これは統合アプローチに固有のものではありませんが、WordPressのWebサイトのコストも非常に高くなる可能性があることを説明するのに役立ちます。彼らは価格を公開していません(企業の一般的な戦略)が、Automattic独自のWordPress VIPホスティングサービスの価格は4桁を超えているため、サードパーティのコンテンツを追加する必要があります。

結論:ここでの価格設定に大きな変化はありません。

パフォーマンス

Webページのパフォーマンスの80%はフロントエンドの問題です。

これは事実ですが、サーバー(初期の20%)にも基づいています。サーバーの最初のリクエストが戻るのに数秒かかる場合、世界で最も速いインターフェイスは、それほど速く感じられません。高速なWebサイトが必要な場合は、最初のリクエストが非常に高速であることを確認する必要があります。

あなたは何が超速いのか知っていますか?グローバルCDNは静的ファイルを提供します。バックエンドサーバー、ホスティング、またはCMSの状況が何であれ、これが達成したいことです。これはJamstack(静的CDNがサポートするホスティング)の基礎ですが、WordPressがそれを行うことができないという意味ではありません。

netlifyに静的コンテンツを備えたindex.htmlファイルを配置すると、非常に高速になります。たぶん、あなたの静的なウェブサイトジェネレーターはそのファイルを生成するでしょう(WordPressからコンテンツを取得する可能性が高いことを指摘する価値があります)。これはとても素晴らしいです。

デフォルトでは、WordPressはグローバルCDNでキャッシュできる静的ファイルを生成しません。 WordPressは、単一のソースからのリクエストに応答し、PHPを実行し、データベースからコンテンツを要求し、応答をアセンブして、最後にページに戻ります。これは迅速な場合がありますが、グローバルCDNS上の静的ファイルよりもはるかに安定性が低く、リクエストに圧倒される可能性が高くなります。

WordPressホストはこれを知っており、ホスティングレベルでこの問題を解決しようとしています。 WPエンジンメソッドをご覧ください。何もしないと、ページキャッシングを使用して、Webサイトが基本的にPHPを実行したりデータベースにアクセスせずに静的資産を返すことができます。また、最適なキャッシングのためにCloudFlareとの連携など、他のさまざまなキャッシュ技術も採用しています。私のshoptalkshow.comのウェブサイトは、私がこれを書いていたときに実際にダウンしていました。私はホストフライホイールに手紙を書き、何が起こったのかを見ました。私がそこに行ってステージングサイトを開いたとき、私は間違った切り替えを切り替えて、彼らのキャッシュをオフにしたことがわかりました。ウェブサイトはトラフィックを処理できず、直接クラッシュします。キャッシュスイッチをオンに戻すと、すぐに問題が解決しました。私はウェブサイトの前でCloudFlareを使用していませんが、そうすべきです。

CloudFlareは、WordPressをより速くするための魔法のヒントの一部です。自己ホストされたWordPress Webサイトの前に置くだけで、速度と信頼性を向上させる上で大きな役割を果たすことができます。不足している部品の1つは、HTML自体の優れたキャッシングです。これは今月解決し、現在もキャッシュできるようになっています。興味深いことに、WordPressのキャッシュは、キャッシュ要求を静的HTMLおよび静的資産として要求し、最終的にはJamstackの本質であるグローバルCDNから提供することを意味します。

Matt M.は、WordPress.comが特定のトラフィックレベルで起動したグローバルCDNを使用していると述べました。 CloudFlareなのかどうかはわかりませんが、疑いはありません。

WordPressサイトの前でCloudFlareを使用した後、私が見る最初の応答番号は、CloudFlareのないNetlifyサイトと同じです(Netlifyホストサイトの前でCloudFlareを使用することをお勧めしないため)。これは2桁のミリ秒の数値で、非常に良いです。

これから、パフォーマンスの議論はフロントエンド固有になります。フロントエンドの速度戦略は、バックエンドサーバー、ホスティング、またはCMSの状況に関係なく同じです。

安全

ハッキングされたWordPress Webサイトについては、Jamstack Webサイトよりも多くのストーリーがあります。しかし、WordPressの安全性が低いと言ってもいいですか? WordPressは約20年前から存在しており、その上に構築されたWebサイトの数はJamstackよりも桁違いに大きくなっています。セキュリティは別として、これらの数字を考慮すると、WordPressからより多くの話が聞こえます。

Matt Mは、Whitehouse.govはWordPressを使用していると述べました。これは明らかに最高レベルのセキュリティを必要とするWebサイトです。これは、WordPress自体が安全でないソフトウェアであると言うことではありません。重要なのは、それをどのように使用するかです。パスワードは安全ではありませんか?どんなプラットフォームを使用しても、安全ではありません。サーバー自体がファイルの許可またはアクセスレベルを渡すことは安全ではありませんか?これは完全にソフトウェアのせいではありませんが、ソフトウェアのためにこの状況にある可能性があります。 WordPressの最新バージョンを実行していますか?使用量はせいぜい分散され、バージョンが古いほどセキュリティが少なくなります。厳しい。

媒体を攻撃することを検討する方が面白いかもしれません。つまり、どのポイントがハッキングされる可能性があるかということです。静的ファイルが静的ホスティングにある場合、攻撃ベクトルは非常に小さいと言っても安全だと思います。しかし、まだいくつかあります:

  • ホスティングアカウントがハッキングされる場合があります
  • Gitリポジトリがハッキングされる場合があります
  • CloudFlareアカウントがハッキングされる場合があります
  • あなたのドメイン名が盗まれる可能性があります(それは起こります)

WordPressのWebサイトにも同じことが言えますが、次のような他の攻撃ベクトルがあります。

  • サーバー側のコード:XSS、悪いプラグイン、リモート実行など。
  • データベースの脆弱性
  • WordPressの古いバージョンを実行します
  • システムへのログインはウェブサイト自体にあります。たとえば、悪者は/wp-login.phpを攻撃することができます

WordPressのWebサイトにはより多くの攻撃ベクトルがあると言ってもいいと思いますが、どのWebサイトも多くのメディアを持っています。任意のWebサイトのホスティングアカウントは主要な媒体です。 DNSチェーン内の何でも。ログイン情報を備えたサードパーティサービス。 APIキーを持つコンテンツ。

個人的な経験:このウェブサイトはWordPressを使用しており、ハッキングされたことはありませんが、試されていないからではありません。静的なWebサイトジェネレーターのみで構築されたサイトよりも、WordPress Webサイトのセキュリティについてもっと考える必要があると感じています。

拡張性

方法を拡張するにはお金がかかります。このWordPress Webサイトは大規模に拡張されていませんが、エントリーレベルのサーバーよりも厳しい拡張が必要です。私はCloudFlareを通じてすべてのトラフィックを提供しているので、過去30日間のピークデータは、私が月に5 TBの帯域幅を提供していることを示しています。

Netlifyビジネスプラン(1か月あたり600 GBのトラフィックを取得し、100 GBの追加ごとに20ドルを請求します)では、計算は979ドルです。このウェブサイトが月に約1,000ドルのサーバーが必要であることを前に言ったときのことを覚えていますか?これらの数字を実行する前にこれらを書いたので、非常に近かった(すごい)。このウェブサイトの規模では、JamstackはWordPressに匹敵します。すべてのホストは帯域幅を請求し、過剰充電制限を持っています。 Amplifyは、15 GBの毎月のキャップを超える帯域幅の場合、GBあたり0.15ドルです。毎月の訪問者キャップに基づいて、フライホイール(私のWordPressホスティング)が請求され、キャップを超えた後、1,000人あたり1ドルが請求されます。

WordPress拡張ストーリーは次のとおりです。

  • それを処理できるホストを使用し、独自の成熟したキャッシングポリシーを持つことができます。
  • すべてのCDN(これは通常、CloudFlareを前に置くことを意味します)。
  • 最終的に、あなたはそれを支払うでしょう。

Jamstack拡張のストーリーは次のとおりです。

  • ホストとサービスの両方がスケーリング用に構築されています。
  • このサービスがこれを処理できるかどうか、または移行が必要かどうかについてあまり考える必要はありませんか?そのような拡張の問題。
  • 各サービスのあらゆる側面に注意が必要な価格があるという事実について、さらに考慮する必要があります。
  • 最終的に、あなたはそれを支払うでしょう。

WordPressホスティングを移行して、Webサイトの現在のニーズに合ったホストを見つける必要がありました。 WordPressのWebサイトを移行するのは簡単ではありませんが、別のCMSに移行するよりもはるかに簡単です。たとえば、ヘッドレスCMSでJamstack Webサイトを構築し、価格が高すぎると、移行コストはホストの切り替えよりも大きくなります。

先日(Slackの会話で)、2つのパフォーマンスを比較することについて(Slackの会話で)Dave Rupertが好きでした。

Jamstack:何でも使用して物を構築します。あなたを助けることができるアドオンがいくつかあり、私たちのものを使用してCDNに展開してクラッシュしないようにします。

WordPress:私たちのものを使用してあなたのものを構築します。あなたを助けることができるいくつかのアドオンがあります、あなたはそれがクラッシュするのを防ぐために特定のホストを使用する必要があります。

他のタイプの「拡張機能」があります。私が考えているのは、ユーザーやその他のものの数です。これは、価格設定階層で使用されるさまざまなサービスの理解可能なメトリックです。しかし、WordPressではそれは無料です。好きなだけユーザーを獲得し、好きなだけ細心の注意を払うことができます。これはCMSだけなので、他のサービスを追加すると、ユーザーごとに請求される場合があります。チームアカウントのユーザーごとにvercelまたはnetlify料金。コンテンツフル(人気のあるヘッドレスCMS)は、月額489ドルから始まります。 GitHubのチーム層でさえ、無料のアカウントが提供していない機能が必要な場合、ユーザーあたり4ドルかかります。

フロントエンドとバックエンドを分離します

これは、JamstackでWebサイトを構築することに人々が興奮する大きな要因です。私のウェブサイトのすべての機能とコンテンツがAPIの背後にある場合、フロントエンドは好きなように構築できます。

  • 完全に静的なWebサイトを構築したいですか? OK、ビルドプロセス中にそのAPIにアクセスして、これを行います。
  • ReactやVueなどを使用して、クライアント側のレンダリングされたWebサイトを構築したいですか?非常に良い、クライアントアクセスAPI。
  • 真ん中を分割し、いくつかのクライアント側のレンダリング、サーバー側のレンダリングを分割したいですか?かっこいい、これはあなたが好きなだけアクセスできるAPIです。

この柔軟性は、真新しいビルドでは優れていますが、人々は理論的な将来の柔軟性にも同様に興奮しています。すべての機能とコンテンツがAPI駆動型である場合、フロントエンドとバックエンドを完全に分離できます。つまり、将来、どちらか側をより柔軟に変更できます。

  • APIがフロントエンドが期待していることを出力し続ける限り、フロントエンドに影響を与えることなくバックエンドを再び編成できます。
  • 必要なデータを取得している限り、バックエンドに影響を与えることなく、フロントエンドを再び作成できます。

特定のサイズとサイズのWebサイトの場合、この分離は「将来的には安全」と感じています。これらのサイズの数値が何であるかを正確に特定することはできませんが、それらは存在します。

1つの当事者や他の当事者に適合するためだけに主要なWebサイトの再編成を行ったことがあるなら、バックエンドとフロントエンドを分離するシステムに移動する賢明な動きを確かに感じています。

WordPressのWebサイトを取り外すことができます(「両方を使用する」セクションで説明します)が、デフォルトでは、WordPressは非常に統合されたソリューションであり、WordPress固有のAPIを使用してPHPのテーマから構築されます。分離はまったくありません。

開発者エクスペリエンス

Jamstackは、開発者エクスペリエンス(DX)をほぼ優先しています。 「ローカルの最適性」と呼ばれる人もいます。つまり、Jamstackのデザインは、ローカル開発(およびローカル開発者)の体験を中心に展開しています。

  • 地元で作業する必要があります。あなたはあなた自身の快適な(ローカル、速い、カスタム)開発環境で働いています。
  • Gitは最初の市民です。生産ブランチ(マスターやメインなど)にプッシュし、ビルドプロセスが実行され、Webサイトが展開されます。プルリクエストごとに、プロダクションWebサイトのプレビューURLを取得することもできます。これは、印象的に強力な機能です。
  • 好きなツールを使用してください。ヒューゴでウェブサイトを事前に構築したいですか?やるだけ。学校でCreate-React-Appを学びましたか?使用されていますが。最新のフレームワークを試してみませんか?たとえあなたが試していても。リポジトリに必要なフォルダーを構築および展開できるという事実を利用して、独自の方法を自由に構築できます。
  • あなたがする必要のないことも重要です。 HTTPSに対処する必要はありません。キャッシュに対処する必要はありません。ファイルアクセス許可を心配する必要はありません。CDNを構成する必要はありません。上級開発者でさえ、これ以上やる必要がないことを高く評価しています。

これは、WordPressが開発者エクスペリエンスを考慮していないということではありません(たとえば、ビルディングブロックのような有用な操作を行うCLIがあります)が、DXはプロジェクトの中核ほど重要ではないと思います。

  • WordPressをローカルで実行するのは難しく、 (x)AMPスタックを何らかの形で実行する必要があります。フライホイールの地元に感謝します。いくつかのガイダンスがありますが、優先事項のようには感じません。
  • Gitに何を入れるべきですか?今日まで、私はまだあまり明確ではありませんが、基本的に /WPコンテンツフォルダー全体を使用することにしました。私にとって、ガイダンスや明らかなベストプラクティスがないことは奇妙に感じます。
  • 独自の展開に責任を負う必要があります。 WordPressの専用ホストでさえ、これを実際にはしません。これは主に単なるものです。これはあなたのSFTP資格情報です
  • 優れたローカル開発と展開パイプラインのセットアップがある場合でも(私は私のものに非常に満足しています)、これはデータベースの動きには本当に役に立たないので、自分で責任を負う必要があります。

これらはすべて解決できる問題であり、WordPressコミュニティは膨大であり、多くの関連情報を見つけることができますが、WordPressがDXをそのコアにしていないと言ってもいいと思います。これらすべての年の後でも、それはまだワイルドウェストに少し似ています。

実際、私は多くの人々が、健全な地元の開発環境に対する励ましの疎外のために、単に地域の開発環境を持っていないことを発見しました。それは逸話ですが、今では他の人のウェブサイトに完全に生産のみの2回関与していることに気付きました。それらが非常に単純なサイトであり、デフォルトの動作を大部分が持っている場合、それは別の話ですが、これらのサイトはそうではありません。それらは非常に複雑であり(このサイトよりもはるかに複雑です)、パブリックユーザーログイン、有料のメンバーシップと許可、ページビルダー、カスタムショートコード、カスタムCSS、および多数のアクティブパーツを含みます。これは私をとても怖がらせます。何も触れたくない。彼らはその場でPHPを編集して、人々が冗談を言っているように、デニムのコーディングについてです。構文エラーを使用すると、Webサイトがクラッシュし、表示されているページもクラッシュします。

特に優れたDXなしでWordPressを動かすことは非常に興味深いです。 DXがなければ、Jamstackはありません。これは完全に開発者向けです。 WordPressの場合、ほとんどのWebサイトには開発者がまったくない場合があります。 WordPress.comの場合はインストールされています(またはアクティブ化されています)、Webサイトの所有者はそこから始まります。ウェブサイトの所有者開発者のようなもので、多くの力がありますが、まったくコードを書くことはできません。

これを行うために、WordPressはDXよりもUXに焦点を当てていると言いたいと思います。これは非常に重要な部分です…

CMSおよびエンドユーザーUX

WordPressは非常に良いCMSです。たとえあなたがそれを気に入らなくても、それが好きな人がたくさんいます。データはそれをすべて語っています。 WordPressを使用してWebサイトを構築することに決めた場合、必要なほぼすべてのタイプのWebサイトを構築する能力が多くなります。 WordPressで起こる可能性は低いです、私は行き止まりに自分自身を押し進めています

これは大したことです。ジェンはこれを指摘し、WordPressを使用する人は開発者のニーズよりも重要であると指摘しています。

WordPressは多くのことをすることができます:

  • ブログ(またはあらゆる種類のコンテンツ中心のCMSスタイルのWebサイト)…
    • コンテンツプレビューでは、これは可能ですが、Jamstackでは難しいです
  • ユーザー/許可を処理する…
    • 管理者/CMSレベルで
    • ユーザー指向のレベル(フォーラム、サブスクリプション、ソーシャルなど)
  • eコマース
  • フォームの処理
  • プラグインを極端に処理します

Jamstackは間違いなくこれらすべてのことを行うことができますが、今ではWild West EraのJamstackです。データを保存する方法に関するチュートリアルを見ると、通常、クラウドデータベースの単一のCRUD関数を書く方法を説明することが含まれます。これは根本的なものであり、非常に強力ですが、いくつかのボタンをクリックすることとは大きく異なります。それはまさにWordPressの感じ方です。

Stripe APIを使用して、基本的なJamstack eコマースセットアップをまとめることができると思います。これはかなりクールです。しかし、在庫管理、出荷エリア、製品のバリエーションについて考え始める必要があるとき、そして誰がeコマースの世界で複雑なことを知っているのか、私は緊張します。

開発者は自分でウェブサイトを構築するだけで(私はこれをたくさんしています)、開発者は主に他の人のためのウェブサイトを構築していると思います。ですから、最も重要な質問は、私が構築しているものは、私が構築している人々の能力を高めるのでしょうか?

とにかく優れたウェブサイト管理エクスペリエンスを達成することができますが、WordPressは、カスタム開発にあまり労力を費やすことなく、フィールドでサービスを提供することを間違いなく証明しています。

ただし、JamstackにはWordPressに実装したいヒントがいくつかあります。私にとって重要なトリックは、ユーザーがサビされたコンテンツと更新です。実際、私は今これから利益を得る3つのサイトを持っています。会議に関するウェブサイト、サーバーレスに関するウェブサイト、およびフォントのコーディングに関する今後のウェブサイト。 WordPressは、3つのサイトすべてで間違いなく素晴らしい仕事をすることができます。しかし、私が本当に望んでいるのは、人々がそれを言うことができる方法でコンテンツを更新してコミットできるようにすることです。はい、それは良さそうです、合併。 Jamstackアプローチを採用することにより、コンテンツは公開GitHubリポジトリにあり、誰でも参加できます。

これは素晴らしいと思います。 Netlify CMSにはオープン作成の概念があり、ブラウザでの貢献経験全体を維持し、編集用のUIを提供するため、必ずしも一般の誰かにGitまたはGithubを理解または理解する必要はありません。

両方を同時に使用します

これは私がよく言及されていることがよくある重要な質問です。 Netlify自体でさえ「反対はない」と言っています。

問題はこれです:

  • 「Jam」の「A」はAPIの略です。 APIを使用して、ビルド時またはクライアントでWebサイトを構築します。
  • WordPressのWebサイトには、デフォルトでREST APIがあります(また、GraphQL APIを持つこともできます)。
  • したがって、このAPIを使用して、Jamstack WebサイトでCMSデータを取得します。

はい、それは完全に大丈夫です。これは機能し、人々はそれをしています。これはクールだと思います。

しかし……

  • Jamstack Webサイトの外でWordPress Webサイトを実行していることは、WordPress WebサイトとJamstack Webサイトを実行していることを意味します。これには、コストと技術的な負債が発生します。
  • 通常、WordPressのすべての価値を取得しません。 APIを使用してデータを取得することはおそらくすべてですが、これはWordPressテーマを構築するための非常に異なる方法です。 WordPressから他の値は得られません。私が考えているのは、このような状況です。あなたはあなたのウェブサイトに派手なグーテンバーグブロックを追加するクールなプラグインを見つけます。これはWordPressサイトで「Just Run」ですが、APIからHTMLを抽出しているだけでは機能しない特別なフロントエンド動作がある場合があります。フロントエンドのホスティング場所に合流する方法を自分で把握し、更新を自分で維持するために必要ないくつかの追加のスクリプトとスタイルが含まれている場合があります。

ユニークな「両方を使用する」アプローチを持つすべての参加者は次のとおりです。

  • Frontity:WordPressのReactフレームワーク。その背後でそれを実行し、ノードサーバーとWordPress Webサイトを使用できます。ノードサーバーはHTMLに反応するため、すべてのページに対してサーバー側のレンダリングを行うことができますが、それでもSPAを構築できます。
  • WP2STATIC:Webサイトの静的バージョンを構築し、変更が行われたときに自動的に展開するWordPressプラグイン。
  • Strattic:WordPressを通常使用できるダイナミックワードプレスWebサイト(「ステージング」と呼んでいます)をホストしています。その後、展開することを選択できます。また、それらはあなたのためにあなたのウェブサイトの静的バージョンをホストします。
  • Shifter:Shifterは、WordPress Webサイトをホストしています。 2つのオプションがあります。1)ヘッドレスに実行(データを取得するためにAPI、REST、またはGraphQLにアクセスするだけです)または2)静的に実行する(WordPressに必要なものがすべてある場合、Webサイトの静的バージョンを作成するか、ホストするか、Netlifyのような場所でプッシュすることもできます)。

両方を統合する他の多くの方法があります。 GeoffとSarahは、Vue/NuxtをRest APIで使用し、Netlifyでホストすることで、WordPressとJamstackの使用方法について話しています。

それらのどれも使用されていません

これが不明な場合に備えて、ウェブサイトを構築する方法は間違いなく多くの方法があります。 RailsのWebサイトでRubyを構築している場合、JamstackWordPressではありません。サーバーが必要であり、そのサーバーを使用してできるだけ多くのことを行うため、WordPressのWebサイトのようなものと考えることができます。また、APIと組み合わせサービスが静的にホストされていなくても、組み合わせサービスを奨励するため、Jamstackのようなものだと考えることもできます。

ネットワークは大きいです、男、それはゼロサムゲームではありません。 WordPressが成長し続け、ネットワーク自体が成長しているため、Jamstackが成長し続けることを完全に期待しています。たとえ市場シェアの割合のみを考慮したとしても、私はまだ両方が成長し、他のものをより小さなセグメントに押しやると思います。

選ぶ

ここでは議論しません。それは私が好意を避けるからではなく、それが必要ではないからです。そこにある開発者が、WordPressメソッドを使用してWebサイトを構築するかどうかを決定しようとしている爪を噛んでいるのを見ません。テクノロジーが十分に理解されるポイントに達し、プロセスは次のとおりです。

  1. 適切な服を着てください
  2. ニーズと結果の評価
  3. テクノロジーを選択します

以上がWordPressとJamstackの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
スクリーンリーダーの分解:アクセス可能なフォームとベストプラクティススクリーンリーダーの分解:アクセス可能なフォームとベストプラクティスMar 08, 2025 am 09:45 AM

これは、フォームアクセシビリティについて行った小さなシリーズの3番目の投稿です。 2番目の投稿を逃した場合は、「ユーザーフォーカスの管理:Focus-Visible」をご覧ください。で

Smart Forms Frameworkを使用してJavaScript連絡フォームを作成するSmart Forms Frameworkを使用してJavaScript連絡フォームを作成するMar 07, 2025 am 11:33 AM

このチュートリアルでは、Smart Formsフレームワークを使用して、プロフェッショナルなJavaScriptフォームの作成を示しています(注:使用できなくなりました)。 フレームワーク自体は利用できませんが、原則とテクニックは他のフォームビルダーに関連しています。

WordPressブロックと要素にボックスシャドウを追加しますWordPressブロックと要素にボックスシャドウを追加しますMar 09, 2025 pm 12:53 PM

CSS Box-Shadowおよびアウトラインプロパティは、WordPress 6.1でTheme.jsonサポートを獲得しました。実際のテーマでどのように機能するか、そしてこれらのスタイルをWordPressブロックと要素に適用するために必要なオプションのいくつかの例を見てみましょう。

GraphQLキャッシングの使用GraphQLキャッシングの使用Mar 19, 2025 am 09:36 AM

最近GraphQLの作業を開始した場合、またはその長所と短所をレビューした場合、「GraphQLがキャッシュをサポートしていない」または

最初のカスタムSvelteトランジションを作成します最初のカスタムSvelteトランジションを作成しますMar 15, 2025 am 11:08 AM

Svelte Transition APIは、コンポーネントがカスタムSVELTE遷移を含むドキュメントを入力または離れるときにアニメーション化する方法を提供します。

上品でクールなカスタムCSSスクロールバー:ショーケース上品でクールなカスタムCSSスクロールバー:ショーケースMar 10, 2025 am 11:37 AM

この記事では、Scrollbarsの世界に飛び込みます。私は知っています、それはあまりにも魅力的ではありませんが、私を信じてください、よく設計されたページは手をつないで行きます

ショー、Don' t Tellショー、Don' t TellMar 16, 2025 am 11:49 AM

あなたのウェブサイトのコンテンツプレゼンテーションの設計にどれくらいの時間に費やしますか?新しいブログ投稿を書いたり、新しいページを作成したりするとき、あなたは考えていますか

NPMコマンドは何ですか?NPMコマンドは何ですか?Mar 15, 2025 am 11:36 AM

NPMコマンドは、サーバーの開始やコンパイルコードなどの1回限りのプロセスまたは継続的に実行されるプロセスとして、さまざまなタスクを実行します。

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衣類リムーバー

AI Hentai Generator

AI Hentai Generator

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

ホットツール

SublimeText3 中国語版

SublimeText3 中国語版

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

SublimeText3 英語版

SublimeText3 英語版

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

MantisBT

MantisBT

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

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

WebStorm Mac版

WebStorm Mac版

便利なJavaScript開発ツール