Hướng dẫn include file html - bao gồm tệp html

Hướng dẫn include file html - bao gồm tệp 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.

...
<body>
   <include src="./header.html"></include>

   Your content here

   <include src="./footer.html"></include>
</body>
...

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

...
<body>
   <?php include "./header.html" ?>

   Your content here

   <?php include "./footer.html" ?>
</body>
...

Sử dụng Gulp

...
<!-- HTML -->
<body>
   @@include('./header.html')

   Content

   @@include('./footer.html')
</body>
...

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

...
<body>
   <!--(bake header.html)-->

   Content

   <!--(bake footer.html)-->
</body>
...

Sử dụng Pug

https://pugjs.org/

...
body
   include ./header.html"

   p Content

   include ./footer.html"

...

All rights reserved

Điểm hạn chế vẫn cần 1 cái gì đó đi kèm ví dụ như gulp để biên dịch nó. 

hùng thông minh lắm

Hướng dẫn include file html - bao gồm tệp html

hùng đẹp trai

Điểm hạn chế vẫn cần 1 cái gì đó đi kèm ví dụ như gulp để biên dịch nó. 

Điểm hạn chế vẫn cần 1 cái gì đó đi kèm ví dụ như gulp để biên dịch nó. 

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

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

hùng đẹp trai

Pug nó là 1 HTML preprocessor. Nghĩa là tiền xử lý html để đưa ra thực tế sử dụng. Cú fáp ngắn gọn hơn HTML: 

Pug nó là 1 HTML preprocessor. Nghĩa là tiền xử lý html để đưa ra thực tế sử dụng. Cú fáp ngắn gọn hơn HTML: 

Điểm hạn chế vẫn cần 1 cái gì đó đi kèm ví dụ như gulp để biên dịch nó. 

hùng thông minh lắm

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: 

Pug nó là 1 HTML preprocessor. Nghĩa là tiền xử lý html để đưa ra thực tế sử dụng. Cú fáp ngắn gọn hơn HTML: 

Điểm hạn chế vẫn cần 1 cái gì đó đi kèm ví dụ như gulp để biên dịch nó. 


...
<body>
   <include src="./header.html"></include>

   Content

   <include src="./footer.html"></include>
</body>
...

Điểm hạn chế vẫn cần 1 cái gì đó đi kèm ví dụ như gulp để biên dịch nó. 

Pug nó là 1 HTML preprocessor. Nghĩa là tiền xử lý html để đưa ra thực tế sử dụng. Cú fáp ngắn gọn hơn HTML: 

hùng đẹp trai

Điểm hạn chế vẫn cần 1 cái gì đó đi kèm ví dụ như gulp để biên dịch nó. 

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

Điểm hạn chế vẫn cần 1 cái gì đó đi kèm ví dụ như gulp để biên dịch nó. 

Pug nó là 1 HTML preprocessor. Nghĩa là tiền xử lý html để đưa ra thực tế sử dụng. Cú fáp ngắn gọn hơn HTML: 

hùng đẹp trai

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

hùng đẹp trai

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

Giả sử bạn có html như sau: 
<body>
  
  <header></header>
  
  Content.
  
  <footer></footer>

</body>

Điểm hạn chế vẫn cần 1 cái gì đó đi kèm ví dụ như gulp để biên dịch nó. 

hùng đẹp trai

Điểm hạn chế vẫn cần 1 cái gì đó đi kèm ví dụ như gulp để biên dịch nó. 

hùng ebudezain

Pug nó là 1 HTML preprocessor. Nghĩa là tiền xử lý html để đưa ra thực tế sử dụng. Cú fáp ngắn gọn hơn HTML: 

hùng đẹp trai

hùng đẹp trai

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

hùng đẹp trai

Điểm hạn chế vẫn cần 1 cái gì đó đi kèm ví dụ như gulp để biên dịch nó. 

hùng đẹp trai

Điểm hạn chế vẫn cần 1 cái gì đó đi kèm ví dụ như gulp để biên dịch 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;
  });

hùng ebudezain

Điểm hạn chế vẫn cần 1 cái gì đó đi kèm ví dụ như gulp để biên dịch nó. 

Pug nó là 1 HTML preprocessor. Nghĩa là tiền xử lý html để đưa ra thực tế sử dụng. Cú fáp ngắn gọn hơn HTML: 

hùng đẹp trai

hùng đẹp trai

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

Điểm hạn chế vẫn cần 1 cái gì đó đi kèm ví dụ như gulp để biên dịch nó. 

Điểm hạn chế vẫn cần 1 cái gì đó đi kèm ví dụ như gulp để biên dịch nó. 

hùng ebudezain

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

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

Điểm hạn chế vẫn cần 1 cái gì đó đi kèm ví dụ như gulp để biên dịch nó. 

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

Điểm hạn chế vẫn cần 1 cái gì đó đi kèm ví dụ như gulp để biên dịch nó. 

hùng đẹp trai

hùng thông minh lắm

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

Điểm hạn chế vẫn cần 1 cái gì đó đi kèm ví dụ như gulp để biên dịch nó. 

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

Pug nó là 1 HTML preprocessor. Nghĩa là tiền xử lý html để đưa ra thực tế sử dụng. Cú fáp ngắn gọn hơn HTML: 

Pug nó là 1 HTML preprocessor. Nghĩa là tiền xử lý html để đưa ra thực tế sử dụng. Cú fáp ngắn gọn hơn HTML: 

...
<body>
   <?php include "./header.html" ?>

   Your content here

   <?php include "./footer.html" ?>
</body>
...
0

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

hùng ebudezain

hùng ebudezain

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

Điểm hạn chế vẫn cần 1 cái gì đó đi kèm ví dụ như gulp để biên dịch nó. 

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

hùng đẹp trai

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

hùng ebudezain

3. IQ 71 - Xài Apache SSI

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

hùng ebudezain

3. IQ 71 - Xài Apache SSI

hùng ebudezain

3. IQ 71 - Xài Apache SSI

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

...
<body>
   <?php include "./header.html" ?>

   Your content here

   <?php include "./footer.html" ?>
</body>
...
1

3. IQ 71 - Xài Apache SSI

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

...
<body>
   <?php include "./header.html" ?>

   Your content here

   <?php include "./footer.html" ?>
</body>
...
2

hùng ebudezain

hùng ebudezain

3. IQ 71 - Xài Apache SSI

hùng đẹp trai

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

hùng ebudezain

3. IQ 71 - Xài Apache SSI
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ố

hùng ebudezain

3. IQ 71 - Xài Apache SSI

3. IQ 71 - Xài Apache SSI

hùng ebudezain

3. IQ 71 - Xài Apache SSI

hùng đẹp trai

hùng ebudezain

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

3. IQ 71 - Xài Apache SSI

3. IQ 71 - Xài Apache SSI

3. IQ 71 - Xài Apache SSI


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

hùng ebudezain

hùng ebudezain

hùng ebudezain

3. IQ 71 - Xài Apache SSI

3. IQ 71 - Xài Apache SSI

hùng ebudezain

hùng ebudezain

hùng ebudezain

3. IQ 71 - Xài Apache SSI

hùng ebudezain

hùng đẹp trai

3. IQ 71 - Xài Apache SSI

bài viết được viết bởi trương thanh hùng https://ebudezain.com/
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 😄 

3. IQ 71 - Xài Apache SSI

3. IQ 71 - Xài Apache SSI

3. IQ 71 - Xài Apache SSI

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

hùng ebudezain

3. IQ 71 - Xài Apache SSI

hùng ebudezain

3. IQ 71 - Xài Apache SSI

...
<body>
   <?php include "./header.html" ?>

   Your content here

   <?php include "./footer.html" ?>
</body>
...
3

hùng đẹp trai

3. IQ 71 - Xài Apache SSI

hùng ebudezain

3. IQ 71 - Xài Apache SSI

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

hùng ebudezain

hùng ebudezain

3. IQ 71 - Xài Apache SSI

hùng ebudezain

3. IQ 71 - Xài Apache SSI

hùng ebudezain

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

3. IQ 71 - Xài Apache SSI

hùng ebudezain

hùng ebudezain

hùng ebudezain

3. IQ 71 - Xài Apache SSI
gulp-file-include

...
<body>
   <?php include "./header.html" ?>

   Your content here

   <?php include "./footer.html" ?>
</body>
...
4

hùng ebudezain

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

hùng ebudezain

3. IQ 71 - Xài Apache SSI

hùng ebudezain

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

hùng ebudezain

hùng đẹp trai

hùng ebudezain

hùng ebudezain

hùng ebudezain

3. IQ 71 - Xài Apache SSI

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

hùng ebudezain

hùng ebudezain

hùng đẹp trai

3. IQ 71 - Xài Apache SSI

hùng ebudezain

3. IQ 71 - Xài Apache SSI

hùng đẹp trai

hùng ebudezain

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

3. IQ 71 - Xài Apache SSI
Giả sử xài PHP thì như sau: 

...
<body>
   <?php include "./header.html" ?>

   Your content here

   <?php include "./footer.html" ?>
</body>
...
5

3. IQ 71 - Xài Apache SSI

hùng đẹp trai

3. IQ 71 - Xài Apache SSI

hùng đẹp trai

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

hùng ebudezain

3. IQ 71 - Xài Apache SSI

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

hùng ebudezain

hùng ebudezain

3. IQ 71 - Xài Apache SSI

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

hùng ebudezain

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

3. IQ 71 - Xài Apache SSI