Hướng dẫn include header in html - bao gồm tiêu đề trong html

Hướng dẫn include header in html - bao gồm tiêu đề trong html

Đã đăng vào thg 6 21, 2019 4:18 SA 0 phút đọc 0 phút đọc

Điều cực kỳ đáng ngạc nhiên với tôi là HTML chưa bao giờ có cách nào để include các tệp HTML khác. Một ví dụ kinh điển: include phần header & footer vào trong trang.

...

   

   Your content here

   

...

Nhân tiện, đoạn code trên chỉ là giả tưởng. Tôi ước một ngày nó trở thành hiện thực. Vậy thì để giải quyết bài toán include HTML thì sẽ có các cách sau:

Sử dụng PHP

...

   

   Your content here

   

...

Sử dụng Gulp

...


   @@include('./header.html')

   Content

   @@include('./footer.html')

...

Gulp có rất nhiều processors có thể xử lý việc này. Một trong số đó là gulp-file-include.

// Javascript
var fileinclude = require('gulp-file-include'),
  gulp = require('gulp');
 
gulp.task('fileinclude', function() {
  gulp.src(['index.html'])
    .pipe(fileinclude({
      prefix: '@@',
      basepath: '@file'
    }))
    .pipe(gulp.dest('./'));
});

Sử dụng Grunt

Plugin grunt-bake sẽ giúp bạn xử lý việc include HTML

Javascript

grunt.initConfig({
    bake: {
        your_target: {
            files: {
                "dist/index.html": "app/index.html",
            }
        }
    }
});

HTML

...

   

   Content

   

...

Sử dụng Pug

https://pugjs.org/

...
body
   include ./header.html"

   p Content

   include ./footer.html"

...

All rights reserved

hùng ebudezain

tôi thích vậy đó

hùng ebudezain

đọc dữ liệu hộ bố

bài viết được viết bởi trương thanh hùng https://ebudezain.com/

bài viết được viết bởi trương thanh hùng https://ebudezain.com/

Hướng dẫn include header in html - bao gồm tiêu đề trong html

hùng thông minh lắm

ahihi đồ ngốc trương thanh hùng nè

bài viết được viết bởi trương thanh hùng https://ebudezain.com/
Đây là 1 ví dụ cụ thể mà bạn thường gặp phải khi code html: 

bài viết được viết bởi trương thanh hùng https://ebudezain.com/

tôi thích vậy đó

ahihi đồ ngốc trương thanh hùng nè

bài viết được viết bởi trương thanh hùng https://ebudezain.com/


...

   

   Content

   

...

đọc dữ liệu hộ bố

hùng ebudezain

bài viết được viết bởi trương thanh hùng https://ebudezain.com/

bài viết được viết bởi trương thanh hùng https://ebudezain.com/

bài viết được viết bởi trương thanh hùng https://ebudezain.com/

hùng thông minh lắm

ahihi đồ ngốc trương thanh hùng nè

bài viết được viết bởi trương thanh hùng https://ebudezain.com/

tôi thích vậy đó

bài viết được viết bởi trương thanh hùng https://ebudezain.com/

đọc dữ liệu hộ bố

bài viết được viết bởi trương thanh hùng https://ebudezain.com/

tôi thích vậy đó

đọc dữ liệu hộ bố

hùng đẹp trai

đọc dữ liệu hộ bố

bài viết được viết bởi trương thanh hùng https://ebudezain.com/

tôi thích vậy đó

Giả sử bạn có html như sau: 

  
  
Content.

ahihi đồ ngốc trương thanh hùng nè

bài viết được viết bởi trương thanh hùng https://ebudezain.com/

đọc dữ liệu hộ bố

bài viết được viết bởi trương thanh hùng https://ebudezain.com/

ahihi đồ ngốc trương thanh hùng nè

fetch("./header.html")
  .then(response => {
    return response.text()
  })
  .then(data => {
    document.querySelector("header").innerHTML = data;
  });

fetch("./footer.html")
  .then(response => {
    return response.text()
  })
  .then(data => {
    document.querySelector("footer").innerHTML = data;
  });

bài viết được viết bởi trương thanh hùng https://ebudezain.com/

hùng ebudezain

bài viết được viết bởi trương thanh hùng https://ebudezain.com/

hùng ebudezain

đọc dữ liệu hộ bố

tôi thích vậy đó

bài viết được viết bởi trương thanh hùng https://ebudezain.com/

đọc dữ liệu hộ bố

ahihi đồ ngốc trương thanh hùng nè

hùng thông minh lắm

hùng ebudezain

bài viết được viết bởi trương thanh hùng https://ebudezain.com/

ahihi đồ ngốc trương thanh hùng nè

bài viết được viết bởi trương thanh hùng https://ebudezain.com/

tôi thích vậy đó

hùng ebudezain

hùng thông minh lắm

tôi thích vậy đó

đọc dữ liệu hộ bố

...

   

   Your content here

   

...
0

tôi thích vậy đó

tôi thích vậy đó

hùng thông minh lắm

ahihi đồ ngốc trương thanh hùng nè

bài viết được viết bởi trương thanh hùng https://ebudezain.com/

ahihi đồ ngốc trương thanh hùng nè

bài viết được viết bởi trương thanh hùng https://ebudezain.com/

tôi thích vậy đó

ahihi đồ ngốc trương thanh hùng nè

bài viết được viết bởi trương thanh hùng https://ebudezain.com/

hùng ebudezain

tôi thích vậy đó

hùng ebudezain

tôi thích vậy đó

tôi thích vậy đó

hùng ebudezain

hùng ebudezain

bài viết được viết bởi trương thanh hùng https://ebudezain.com/

bài viết được viết bởi trương thanh hùng https://ebudezain.com/

...

   

   Your content here

   

...
1

ahihi đồ ngốc trương thanh hùng nè

hùng ebudezain

đọc dữ liệu hộ bố

đọc dữ liệu hộ bố

hùng ebudezain

Nhưng không chỉ thế bạn còn cần cấu hình Apache để cho phép include: 

...

   

   Your content here

   

...
2

bài viết được viết bởi trương thanh hùng https://ebudezain.com/

đọc dữ liệu hộ bố

Rồi thì nếu bạn phải cấu hình Apache thì bạn cũng có ngôn ngữ back end ví dụ PHP, java, ... Thì cớ sao phải cấu hình Apache nữa.  MẶt khác, Sẽ rất "tuyệt vời" nếu đứa khác clone html của bạn về mà còn phải config 1 nùi mới chạy được. Như thế nó chắc sẽ vui lắm 😄 
MẶt khác, Sẽ rất "tuyệt vời" nếu đứa khác clone html của bạn về mà còn phải config 1 nùi mới chạy được. Như thế nó chắc sẽ vui lắm 😄 

bài viết được viết bởi trương thanh hùng https://ebudezain.com/

đọc dữ liệu hộ bố

Rồi thì nếu bạn phải cấu hình Apache thì bạn cũng có ngôn ngữ back end ví dụ PHP, java, ... Thì cớ sao phải cấu hình Apache nữa.  MẶt khác, Sẽ rất "tuyệt vời" nếu đứa khác clone html của bạn về mà còn phải config 1 nùi mới chạy được. Như thế nó chắc sẽ vui lắm 😄 

Rồi thì nếu bạn phải cấu hình Apache thì bạn cũng có ngôn ngữ back end ví dụ PHP, java, ... Thì cớ sao phải cấu hình Apache nữa.  MẶt khác, Sẽ rất "tuyệt vời" nếu đứa khác clone html của bạn về mà còn phải config 1 nùi mới chạy được. Như thế nó chắc sẽ vui lắm 😄 


4. IQ 100 - Xài CodeKit

đọc dữ liệu hộ bố

Rồi thì nếu bạn phải cấu hình Apache thì bạn cũng có ngôn ngữ back end ví dụ PHP, java, ... Thì cớ sao phải cấu hình Apache nữa.  MẶt khác, Sẽ rất "tuyệt vời" nếu đứa khác clone html của bạn về mà còn phải config 1 nùi mới chạy được. Như thế nó chắc sẽ vui lắm 😄 

bài viết được viết bởi trương thanh hùng https://ebudezain.com/

đọc dữ liệu hộ bố

Rồi thì nếu bạn phải cấu hình Apache thì bạn cũng có ngôn ngữ back end ví dụ PHP, java, ... Thì cớ sao phải cấu hình Apache nữa.  MẶt khác, Sẽ rất "tuyệt vời" nếu đứa khác clone html của bạn về mà còn phải config 1 nùi mới chạy được. Như thế nó chắc sẽ vui lắm 😄 

4. IQ 100 - Xài CodeKit

ahihi đồ ngốc trương thanh hùng nè

CodeKit có 90% giống HTML. nó là công cụ để build html mà không cần config. Khuyết điểm là chỉ có trên máy mac 😄 Thử nghĩ xem nếu công ty bạn có 1 đứa xài windows chắc nó đấm bạn không trượt phát lào. 
MẶt khác nếu công ty bạn có đứa không cài Dreamweaver thì nó sẽ vui lắm khi bạn cứ xài đồ cũ mà nó thì cứ cà khịa bạn 😄 

Rồi thì nếu bạn phải cấu hình Apache thì bạn cũng có ngôn ngữ back end ví dụ PHP, java, ... Thì cớ sao phải cấu hình Apache nữa.  MẶt khác, Sẽ rất "tuyệt vời" nếu đứa khác clone html của bạn về mà còn phải config 1 nùi mới chạy được. Như thế nó chắc sẽ vui lắm 😄 

ahihi đồ ngốc trương thanh hùng nè

CodeKit có 90% giống HTML. nó là công cụ để build html mà không cần config. Khuyết điểm là chỉ có trên máy mac 😄 Thử nghĩ xem nếu công ty bạn có 1 đứa xài windows chắc nó đấm bạn không trượt phát lào. 

đọc dữ liệu hộ bố

Rồi thì nếu bạn phải cấu hình Apache thì bạn cũng có ngôn ngữ back end ví dụ PHP, java, ... Thì cớ sao phải cấu hình Apache nữa.  MẶt khác, Sẽ rất "tuyệt vời" nếu đứa khác clone html của bạn về mà còn phải config 1 nùi mới chạy được. Như thế nó chắc sẽ vui lắm 😄 

bài viết được viết bởi trương thanh hùng https://ebudezain.com/

ahihi đồ ngốc trương thanh hùng nè

Rồi thì nếu bạn phải cấu hình Apache thì bạn cũng có ngôn ngữ back end ví dụ PHP, java, ... Thì cớ sao phải cấu hình Apache nữa.  MẶt khác, Sẽ rất "tuyệt vời" nếu đứa khác clone html của bạn về mà còn phải config 1 nùi mới chạy được. Như thế nó chắc sẽ vui lắm 😄 

ahihi đồ ngốc trương thanh hùng nè

Rồi thì nếu bạn phải cấu hình Apache thì bạn cũng có ngôn ngữ back end ví dụ PHP, java, ... Thì cớ sao phải cấu hình Apache nữa.  MẶt khác, Sẽ rất "tuyệt vời" nếu đứa khác clone html của bạn về mà còn phải config 1 nùi mới chạy được. Như thế nó chắc sẽ vui lắm 😄 

ahihi đồ ngốc trương thanh hùng nè

bài viết được viết bởi trương thanh hùng https://ebudezain.com/

bài viết được viết bởi trương thanh hùng https://ebudezain.com/

CodeKit có 90% giống HTML. nó là công cụ để build html mà không cần config. Khuyết điểm là chỉ có trên máy mac 😄 Thử nghĩ xem nếu công ty bạn có 1 đứa xài windows chắc nó đấm bạn không trượt phát lào. 

...

   

   Your content here

   

...
3

Rồi thì nếu bạn phải cấu hình Apache thì bạn cũng có ngôn ngữ back end ví dụ PHP, java, ... Thì cớ sao phải cấu hình Apache nữa.  MẶt khác, Sẽ rất "tuyệt vời" nếu đứa khác clone html của bạn về mà còn phải config 1 nùi mới chạy được. Như thế nó chắc sẽ vui lắm 😄 

Rồi thì nếu bạn phải cấu hình Apache thì bạn cũng có ngôn ngữ back end ví dụ PHP, java, ... Thì cớ sao phải cấu hình Apache nữa.  MẶt khác, Sẽ rất "tuyệt vời" nếu đứa khác clone html của bạn về mà còn phải config 1 nùi mới chạy được. Như thế nó chắc sẽ vui lắm 😄 

Rồi thì nếu bạn phải cấu hình Apache thì bạn cũng có ngôn ngữ back end ví dụ PHP, java, ... Thì cớ sao phải cấu hình Apache nữa.  MẶt khác, Sẽ rất "tuyệt vời" nếu đứa khác clone html của bạn về mà còn phải config 1 nùi mới chạy được. Như thế nó chắc sẽ vui lắm 😄 

ahihi đồ ngốc trương thanh hùng nè

ahihi đồ ngốc trương thanh hùng nè

CodeKit có 90% giống HTML. nó là công cụ để build html mà không cần config. Khuyết điểm là chỉ có trên máy mac 😄 Thử nghĩ xem nếu công ty bạn có 1 đứa xài windows chắc nó đấm bạn không trượt phát lào. 

4. IQ 100 - Xài CodeKit

4. IQ 100 - Xài CodeKit

Rồi thì nếu bạn phải cấu hình Apache thì bạn cũng có ngôn ngữ back end ví dụ PHP, java, ... Thì cớ sao phải cấu hình Apache nữa.  MẶt khác, Sẽ rất "tuyệt vời" nếu đứa khác clone html của bạn về mà còn phải config 1 nùi mới chạy được. Như thế nó chắc sẽ vui lắm 😄 

ahihi đồ ngốc trương thanh hùng nè

CodeKit có 90% giống HTML. nó là công cụ để build html mà không cần config. Khuyết điểm là chỉ có trên máy mac 😄 Thử nghĩ xem nếu công ty bạn có 1 đứa xài windows chắc nó đấm bạn không trượt phát lào. 

Rồi thì nếu bạn phải cấu hình Apache thì bạn cũng có ngôn ngữ back end ví dụ PHP, java, ... Thì cớ sao phải cấu hình Apache nữa.  MẶt khác, Sẽ rất "tuyệt vời" nếu đứa khác clone html của bạn về mà còn phải config 1 nùi mới chạy được. Như thế nó chắc sẽ vui lắm 😄 

bài viết được viết bởi trương thanh hùng https://ebudezain.com/

Rồi thì nếu bạn phải cấu hình Apache thì bạn cũng có ngôn ngữ back end ví dụ PHP, java, ... Thì cớ sao phải cấu hình Apache nữa.  MẶt khác, Sẽ rất "tuyệt vời" nếu đứa khác clone html của bạn về mà còn phải config 1 nùi mới chạy được. Như thế nó chắc sẽ vui lắm 😄 

Rồi thì nếu bạn phải cấu hình Apache thì bạn cũng có ngôn ngữ back end ví dụ PHP, java, ... Thì cớ sao phải cấu hình Apache nữa.  MẶt khác, Sẽ rất "tuyệt vời" nếu đứa khác clone html của bạn về mà còn phải config 1 nùi mới chạy được. Như thế nó chắc sẽ vui lắm 😄 

ahihi đồ ngốc trương thanh hùng nè

đọc dữ liệu hộ bố

đọc dữ liệu hộ bố

Rồi thì nếu bạn phải cấu hình Apache thì bạn cũng có ngôn ngữ back end ví dụ PHP, java, ... Thì cớ sao phải cấu hình Apache nữa.  MẶt khác, Sẽ rất "tuyệt vời" nếu đứa khác clone html của bạn về mà còn phải config 1 nùi mới chạy được. Như thế nó chắc sẽ vui lắm 😄 

4. IQ 100 - Xài CodeKit
gulp-file-include

...

   

   Your content here

   

...
4

ahihi đồ ngốc trương thanh hùng nè

ahihi đồ ngốc trương thanh hùng nè

Rồi thì nếu bạn phải cấu hình Apache thì bạn cũng có ngôn ngữ back end ví dụ PHP, java, ... Thì cớ sao phải cấu hình Apache nữa.  MẶt khác, Sẽ rất "tuyệt vời" nếu đứa khác clone html của bạn về mà còn phải config 1 nùi mới chạy được. Như thế nó chắc sẽ vui lắm 😄 

Rồi thì nếu bạn phải cấu hình Apache thì bạn cũng có ngôn ngữ back end ví dụ PHP, java, ... Thì cớ sao phải cấu hình Apache nữa.  MẶt khác, Sẽ rất "tuyệt vời" nếu đứa khác clone html của bạn về mà còn phải config 1 nùi mới chạy được. Như thế nó chắc sẽ vui lắm 😄 

4. IQ 100 - Xài CodeKit

đọc dữ liệu hộ bố

bài viết được viết bởi trương thanh hùng https://ebudezain.com/

ahihi đồ ngốc trương thanh hùng nè

bài viết được viết bởi trương thanh hùng https://ebudezain.com/

CodeKit có 90% giống HTML. nó là công cụ để build html mà không cần config. Khuyết điểm là chỉ có trên máy mac 😄 Thử nghĩ xem nếu công ty bạn có 1 đứa xài windows chắc nó đấm bạn không trượt phát lào. 

4. IQ 100 - Xài CodeKit

4. IQ 100 - Xài CodeKit

Rồi thì nếu bạn phải cấu hình Apache thì bạn cũng có ngôn ngữ back end ví dụ PHP, java, ... Thì cớ sao phải cấu hình Apache nữa.  MẶt khác, Sẽ rất "tuyệt vời" nếu đứa khác clone html của bạn về mà còn phải config 1 nùi mới chạy được. Như thế nó chắc sẽ vui lắm 😄 

Rồi thì nếu bạn phải cấu hình Apache thì bạn cũng có ngôn ngữ back end ví dụ PHP, java, ... Thì cớ sao phải cấu hình Apache nữa.  MẶt khác, Sẽ rất "tuyệt vời" nếu đứa khác clone html của bạn về mà còn phải config 1 nùi mới chạy được. Như thế nó chắc sẽ vui lắm 😄 

4. IQ 100 - Xài CodeKit

Rồi thì nếu bạn phải cấu hình Apache thì bạn cũng có ngôn ngữ back end ví dụ PHP, java, ... Thì cớ sao phải cấu hình Apache nữa.  MẶt khác, Sẽ rất "tuyệt vời" nếu đứa khác clone html của bạn về mà còn phải config 1 nùi mới chạy được. Như thế nó chắc sẽ vui lắm 😄 

ahihi đồ ngốc trương thanh hùng nè

đọc dữ liệu hộ bố

bài viết được viết bởi trương thanh hùng https://ebudezain.com/

4. IQ 100 - Xài CodeKit

Rồi thì nếu bạn phải cấu hình Apache thì bạn cũng có ngôn ngữ back end ví dụ PHP, java, ... Thì cớ sao phải cấu hình Apache nữa.  MẶt khác, Sẽ rất "tuyệt vời" nếu đứa khác clone html của bạn về mà còn phải config 1 nùi mới chạy được. Như thế nó chắc sẽ vui lắm 😄 

Rồi thì nếu bạn phải cấu hình Apache thì bạn cũng có ngôn ngữ back end ví dụ PHP, java, ... Thì cớ sao phải cấu hình Apache nữa.  MẶt khác, Sẽ rất "tuyệt vời" nếu đứa khác clone html của bạn về mà còn phải config 1 nùi mới chạy được. Như thế nó chắc sẽ vui lắm 😄 

4. IQ 100 - Xài CodeKit

4. IQ 100 - Xài CodeKit

ahihi đồ ngốc trương thanh hùng nè

Rồi thì nếu bạn phải cấu hình Apache thì bạn cũng có ngôn ngữ back end ví dụ PHP, java, ... Thì cớ sao phải cấu hình Apache nữa.  MẶt khác, Sẽ rất "tuyệt vời" nếu đứa khác clone html của bạn về mà còn phải config 1 nùi mới chạy được. Như thế nó chắc sẽ vui lắm 😄 

4. IQ 100 - Xài CodeKit
Giả sử xài PHP thì như sau: 

...

   

   Your content here

   

...
5

bài viết được viết bởi trương thanh hùng https://ebudezain.com/

ahihi đồ ngốc trương thanh hùng nè

ahihi đồ ngốc trương thanh hùng nè

4. IQ 100 - Xài CodeKit

ahihi đồ ngốc trương thanh hùng nè

Rồi thì nếu bạn phải cấu hình Apache thì bạn cũng có ngôn ngữ back end ví dụ PHP, java, ... Thì cớ sao phải cấu hình Apache nữa.  MẶt khác, Sẽ rất "tuyệt vời" nếu đứa khác clone html của bạn về mà còn phải config 1 nùi mới chạy được. Như thế nó chắc sẽ vui lắm 😄 

Rồi thì nếu bạn phải cấu hình Apache thì bạn cũng có ngôn ngữ back end ví dụ PHP, java, ... Thì cớ sao phải cấu hình Apache nữa.  MẶt khác, Sẽ rất "tuyệt vời" nếu đứa khác clone html của bạn về mà còn phải config 1 nùi mới chạy được. Như thế nó chắc sẽ vui lắm 😄 

đọc dữ liệu hộ bố

4. IQ 100 - Xài CodeKit