目次
ビジネスシナリオ
パッケージとテンプレートに基づく共有
スクリプト生成の共有方法
ホームページ ウェブフロントエンド htmlチュートリアル Header と Footer_html/css_WEB-ITnose を適切に共有する方法

Header と Footer_html/css_WEB-ITnose を適切に共有する方法

Jun 21, 2016 am 08:56 AM

Weibo の SegmentFault でヘッダーとフッターの共有に関する問題を偶然発見し、偶然この問題を解決しました。ここで私たちの経験を共有しましょう。

ビジネスシナリオ

当社のビジネス環境は、58.com や Soufun.com などのサイトと似ています。私たちが運営するサイトは主に次の 3 つのページで構成されています。

  • 検索用ホームページ
  • 検索結果ページ
  • 製品情報を表示する詳細ページ。

一般的に Google と同様に、単純なホームページ、検索結果ページ、およびターゲット Web サイトのページがあります。古いシステムでは、これら 3 つの異なるページはすべて同じコード ベース内にありました。

新しいシステムでは、これらは別のプロジェクトになります。ホームページは Google と同じくらい速く開く必要があるため、コンテンツの一部が動的である Web サイトになりますが、ほとんどの場合は静的な Web サイトになります。この点については、以前の記事「編集・公開・開発の分離」を参照してください。新しいホームページ (固定ページ) は、コンテンツの編集および更新時にのみ生成されます。現時点では、ユーザーのアクセス速度を制限できるため、CDN に勝るものはありません。

同時に、いくつかの異なるブログと十数のトラフィック サイトもあり、それらはすべて同じヘッダーとフッターを使用する必要があります。他のページに対応して、React を使用してそれらを構築します。つまり、別のテンプレートが必要になります。

そして、新しいシステムを設計しているときに、Web サイトの UI を更新する計画がありました。つまり、古いシステムの置き換えを完了する前に、すべての Web サイトの UI を更新する必要があります。なんと!

そこで、この時点で、最初の共有ヘッダーとフッターのアーキテクチャを設計しました。

パッケージとテンプレートに基づく共有

次に、リリース時間の制約により、当初はスクリプトベースの共有を実装しませんでした。そのため、内部 UI フレームワークを使用しており、この UI フレームワークはすべてのサイトで使用され、同じ HTML と CSS を使用できます。

新しいサイトでは、Bower と GitHub に基づくリリース ソリューションを使用し、ビルド ツールとして Grunt を使用します。サーバーをローカルで起動するたびに、依存関係が更新されます。したがって、私たちのサイトでは、bower.json のバージョン番号を更新するだけで済みます。

旧サイトに関しては、レガシーシステムのため、そのような高度なツールはありません。理論的に言えば、それにあまり多くの時間とエネルギーを費やすべきではないため、手動コピー ソリューションを選択しました。

ブログやその他のサイトでは、手動コピーを使用するものと、iFrame 読み込みを使用するものがあります。そのため、新しいバージョンをリリースする際には、新しいヘッダーとフッターを AWS S3 にアップロードします。

iFrame サイトの場合、動的更新が実装されます。他のサイトの場合は手動更新が必要です。それでも、ビジネスが決まったWebサイトの場合、ヘッダーとフッターは年に1~2回しか更新されません。ただし、買収や買収が発生した場合は、さらに 1 つまたは 2 つの更新が行われることになります。

では、HTML ベースではなくテンプレートを使用しているサイトはどうでしょうか?

スクリプト生成の共有方法

最も明らかな問題は、React を使用しているサイトです。ほとんどのテンプレート エンジンは class="" をサポートできますが、React では className="" のみを使用できるためです。したがって、base.html などの基本的なテンプレート ファイルに HTML を記述するか、class を className に置き換えます。アーキテクチャは次の構造に変換されます:

したがって、現時点での理想的な方法は、特定の種類のテンプレートを通じて対応するテンプレートを生成することです。つまり、JSX テンプレート ファイルを用意し、そのファイル内の対応するコンテンツを置き換えるだけで済みます。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

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

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

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

SublimeText3 中国語版

SublimeText3 中国語版

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

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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

HTMLは初心者のために簡単に学ぶことができますか? HTMLは初心者のために簡単に学ぶことができますか? Apr 07, 2025 am 12:11 AM

HTMLは、簡単に学習しやすく、結果をすばやく見ることができるため、初心者に適しています。 1)HTMLの学習曲線はスムーズで簡単に開始できます。 2)基本タグをマスターして、Webページの作成を開始します。 3)柔軟性が高く、CSSおよびJavaScriptと組み合わせて使用​​できます。 4)豊富な学習リソースと最新のツールは、学習プロセスをサポートしています。

HTML、CSS、およびJavaScriptの役割:コアの責任 HTML、CSS、およびJavaScriptの役割:コアの責任 Apr 08, 2025 pm 07:05 PM

HTMLはWeb構造を定義し、CSSはスタイルとレイアウトを担当し、JavaScriptは動的な相互作用を提供します。 3人はWeb開発で職務を遂行し、共同でカラフルなWebサイトを構築します。

HTMLでの開始タグの例は何ですか? HTMLでの開始タグの例は何ですか? Apr 06, 2025 am 12:04 AM

Anexampleapalofastartingtaginhtmlis、それはaperginsaparagraph.startingtagsaresentionentientiontheyinitiateelements、definetheirtypes、およびarecrucialforurturingwebpagesandcontingthomedomを構築します。

HTML、CSS、およびJavaScriptの理解:初心者向けガイド HTML、CSS、およびJavaScriptの理解:初心者向けガイド Apr 12, 2025 am 12:02 AM

webdevelopmentReliesOnhtml、css、andjavascript:1)htmlStructuresContent、2)cssStylesit、および3)Javascriptaddsinteractivity、形成、

Giteeページ静的なWebサイトの展開に失敗しました:単一のファイル404エラーをトラブルシューティングと解決する方法 Giteeページ静的なWebサイトの展開に失敗しました:単一のファイル404エラーをトラブルシューティングと解決する方法 Apr 04, 2025 pm 11:54 PM

GiteEpages静的Webサイトの展開が失敗しました:404エラーのトラブルシューティングと解像度Giteeを使用する

WebアノテーションにY軸位置の適応レイアウトを実装する方法は? WebアノテーションにY軸位置の適応レイアウトを実装する方法は? Apr 04, 2025 pm 11:30 PM

Y軸位置Webアノテーション機能の適応アルゴリズムこの記事では、単語文書と同様の注釈関数、特に注釈間の間隔を扱う方法を実装する方法を探ります...

HTML、CSS、およびJavaScript:Web開発者に不可欠なツール HTML、CSS、およびJavaScript:Web開発者に不可欠なツール Apr 09, 2025 am 12:12 AM

HTML、CSS、およびJavaScriptは、Web開発の3つの柱です。 1。HTMLは、Webページ構造を定義し、などなどのタグを使用します。2。CSSは、色、フォントサイズなどのセレクターと属性を使用してWebページスタイルを制御します。

CSS3とJavaScriptを使用して、クリック後に周囲の写真を散乱および拡大する効果を実現する方法は? CSS3とJavaScriptを使用して、クリック後に周囲の写真を散乱および拡大する効果を実現する方法は? Apr 05, 2025 am 06:15 AM

画像をクリックした後、散乱と周囲の画像を拡大する効果を実現するには、多くのWebデザインがインタラクティブな効果を実現する必要があります。特定の画像をクリックして周囲を作成してください...

See all articles