Lưu trữ tác giả: Nguyen Toan

UX BUILDER XU HƯỚNG HIỆN NAY

Nội dung

    Ngày nay, với sự phát triển của công nghệ việc sở hữu một website sẽ giúp bạn tiếp cận được nhiều khách hàng tìm năng hơn rất nhiều. Website là một trong những công cụ kiếm tiền đắc lực nhất hiện nay bởi tiềm năng sinh lời của nó là vô hạn. Tuy nhiên, có rất nhiều người không biết cách xây dựng một website hoàn chỉnh. Hiện nay, chúng ta không cần biết code mới xây được website vì đã có những phần mềm hỗ trợ thiết kế web chỉ với thao tác kéo thả đơn giản.

    Thiết kế website là gì?

    Thiết kế websitelà việc tạo một trang web cho một cá nhân, công ty, doanh nghiệp hoặc một tổ chức. Hiện nay, có 2 cách để thiết kế một website đó là: thiết kế web tĩnh và thiết kế web động.

    UX BUILDER XU HƯỚNG HIỆN NAY

    Thiết kế web động

    Đây là web có hệ thống cơ sở dữ liệu dùng để cung cấp thông tin cho web. Điểm mạnh của thiết kế web động là khả năng lưu giữ dữ liệu tốt, tạo tương tác tốt và dễ dàng cập nhật nội dung. Ngoài ra, với thiết kế web động, việc thêm các tính năng tiện ích quản lý cho doanh nghiệp cũng dễ dàng mà lại thân thiện, dễ tiếp cận với người dùng.

    Thiết kế web tĩnh

    Thiết kế web tĩnh là sử dụng các đoạn mã HTML, hình ảnh , video… nhằm tạo ra một trang web. Tập tin của trang web đó được lưu có phần mở rộng là html hoặc htm. Tuy nhiên, trong thiết kế web tĩnh không có hệ cơ sở dữ liệu như MySQL hay MSSQL.

    Lợi ích của thiết kế web kéo thả

    Sở dĩ, thiết kế web kéo thả được rất nhiều người sử dụng là vì:

    • Tiện lợi, dễ sử dụng: thích hợp cho mọi người kể cả những người không biết gì về code. Thao tác sử dụng đơn giản, chỉ cần kéo thả chuột, lựa chọn từ tài nguyên sẵn có,…
    • Tiết kiệm thời gian, công sức: Thay vì phải bỏ ra hàng đống tiền và thời gian để vật lộn với các kiến thức lập trình khó nhằn, chưa kể đến những lỗi lập trình thì việc sử dụng phần mềm thiết kế web kéo thả sẽ khiến cuộc sống bạn dễ dàng hơn nhiều.
    • Tiết kiệm chi phí: Hiện nay có rất nhiều doanh nghiệp phải bỏ một khoảng tiền để thuê agency thiết kế website. Đối với những doanh nghiệp nhỏ thì việc tự xây dựng web sẽ tiết kiệm một khoảng chi phí đáng kể cho bạn.

    Top phần mềm thiết kế website kéo thả đơn giản ai cũng làm được

    Thiết kế web kéo thả với Adobe DreamWeaver

    Nếu bạn là một người đang thiết kế và xây dựng website thì không thể không biết đến phần mềmAdobe DreamWeaver. Phần mềm này giúp người dùng kéo thả một cách đơn giản, dễ dàng và xây dựng một web nhanh chóng.

    UX BUILDER XU HƯỚNG HIỆN NAY

    Một trong những ưu điểm lớn nhất của phần mềm này chính là giúp bạn tiết kiệm thời gian và công sức cho việc thiết kế web. Ngoài ra, người dùng có thể sử dụng trang web này một cách chuyên nghiệp mà không cần phải có quá nhiều hiểu biết và chuyên môn về thiết kế website.

    Một trong những điều tuyệt vời nữa mà phần mềm thiết kế web này mang đến cho người dùng đó là, phần mềm này được sáng tạo bởi Adobe – một hãng có rất nhiều phần mềm cho thiết kế. Chính vì thế, bạn có thể sử dụng các phần mềm khác của hãng để có thể mang lại nhiều tiện ích cho việc thiết kế web.

    Slimbuilder – TOP Phần mềm thiết kế web kéo thả dễ sử dụng nhất

    Slimbuilderlà một trong nhữngphần mềm thiết kế web kéo thảđược ưa chuộng nhất hiện nay. Đây cũng chính là phần mềm có lượng người dùng đông đảo nhất.

    Ưu điểm lớn nhất của phần mềm này là các thao tác đơn giản, chỉ cần kéo thả bạn đã có thể thiết kế bố cục trang web đúng với nhu cầu của mình. Bên cạnh đó, việc thay đổi giao diện, màu sắc của web cũng rất dễ dàng và nhanh chóng.

    UX BUILDER XU HƯỚNG HIỆN NAY

    Ngoài ra, điểm nổi bật của Slimbuilder khiến nhiều người ưa chộng đó là bạn có thể tạo một trang web mà không giới hạn số trang. Với ưu điểm này, những người thiết kế web có thể thỏa sức sáng tạo, thiết kế theo nhu cầu mà không bị giới hạn.

    ArtisteerCông cụ thiết kế web kéo thả đơn giản nhất hiện

    Có thể nói, phần mềm Artisteer là một công cụ đắc lực hỗ trợ người xây dựng và thiết kế website. Đây là phần mềm thiết kế web kéo thả có rất nhiều mẫu để bạn có thể lựa chọn. Sử dụng phần mềm thiết kế này, bạn đã sở hữu trong tay một kho mẫu đa dạng web để thoái sáng tạo nền tảng web.

    UX BUILDER XU HƯỚNG HIỆN NAY

    Phần mềm Artisteer có điểm nổi bật là khả năng tương thích với các nền tảng web lớn mang đến những liên kết hữu ích.

    Thiết kế web với phần mềm WebEasy Professional

    WebEasy Professional đây là một trong những phần mềm hỗ trợ thiết kế web kéo thả không cần viết code. Có thể nói, WebEasy Professional là một phần mềm thiết kế web vô cùng hữu ích hiện nay.

    UX BUILDER XU HƯỚNG HIỆN NAY

    Phần mềm này cung cấp sẵn cho người dùng nhiều giao diện để lựa chọn. Ngoài ra, phần mềm này cũng có tính năng kéo thả có khả năng xuất bản và chia sẻ sản phẩm web đến nhiều người. Một trong những tính năng ưu việt của WebEasy Professional phải kể đến là tính năng xem trước giúp người thiết kế có thể thử nghiệm nhiều bản xem trước để có thể lựa chọn bản phù hợp nhất.

    Microsoft web Expression – Thiết kế website đơn giản hơn bao giờ hết

    Microsoft web Expression được mệnh danh là phần mềm thiết kế web kéo thả đơn giản nhất hiện nay. Với phần mềm này, những người không có kiến thức về thiết kế web đều có thể xây dựng web một cách dễ dàng. Các bạn có thể thiết kế web bằng những thao tác đơn giản nhất và được hướng dẫn một cách tỉ mỉ.

    UX BUILDER XU HƯỚNG HIỆN NAY

    Ngoài ra, phần mềm này còn được xây dựng và định dạng các cách xem dữ liệu chuẩn giúp tiết kiệm thời gian và tạo nên những trang web hiện đại nhất. Khi sử dụng phần mềm này, bạn có thể sử dụng thêm các phần mềm khác để nâng cao hiệu quả xây dựng website.

    TOP phần mềm thiết kế web miễn phí tốt nhất

    Ngoài việc sử dụng các phần mềm thiết kế website kéo thả màAzseođã nói đến ở bên trên. Bạn hoàn toàn có thể thiết kế website miễn phí thỏa sức sáng tạo cho bản thân để tự làm website theo ý muốn mà không cần phải mất tiền. Và dưới đây là top phần mềm thiết kế website miễn phí bạn nên biết.

    Thiết kế website bằng WordPress – Nền tảng thiết kế web dùng nhiều nhất hiện nay

    WordPress là một trong những mã nguồn mở được sử dụng để thiết kế website nhiều nhất và phổ biến nhất hiện nay. Mã nguồn này cũng cung cấp cho người dùng phiên bản thiết kế web miễn phí.

    Thế nhưng ở phần miễn phí này sẽ bị giới hạn một số tính năng cũng như bạn không thể tùy chỉnh quá nhiều ngoài việc sử dụng những theme mặc định có sẵn được cung cấp bởi wordpress.

    UX BUILDER XU HƯỚNG HIỆN NAY

    Vì vậy, thiết kế website miễn phí với WordPress thường được dùng để thiết kế website tin tức, blog, tạp chí, giới thiệu doanh nghiệp,…đơn giản không qua phức tạp.

    CoffeeCup Free HTML Editor – Phần mềm thiết kế web chuyên nghiệp

    Đây là một trong những nền tảng thiết kế HTML đơn giản nhất và dễ sử dụng nhất hiện nay. Với Phần mềm thiết kế web CoffeeCup Free HTML Editor bạn có thể tự tạo cho mình một website riêng với những tùy chỉnh đơn giản những vẫn đẹp.

    Wix – Nền tảng làm website dễ dàng

    Wix là một trong những cái tên hàng đầu trong việc cung cấp website miễn phí cho khách hàng. Tuy nhiên, ở phiên bản miễn phí cũng sẽ bị giới hạn một số tinh năng như đối với website miễn phí WordPress.

    Thế nhưng với sự sáng tạo, bạn hoàn toàn có thể tự tạo cho bản thân một website chuyên nghiệp trên nền tảng Wix.

    UX BUILDER XU HƯỚNG HIỆN NAY

    Trên đây, chúng tôi đã giới thiệu đến các bạn top những phần mềm kéo thả đơn giản nhất mà ai cũng làm được. Hy vọng những thông tin này sẽ giúp ích cho các bạn. Chúc các bạn xây dựng web thành công.

    Thêm tính năng cho Flatsome

    Lưu bản nháp tự động
    Nội dung

      Những addon của flatsome

      1. Editor Cleanup For Flatsome: FDP add-on to clean up the Flatsome UX Builder
      Editor Cleanup For Flatsome là một tiện ích bổ sung củaFreesoul Deactivate Pluginsđểdọn dẹp trình chỉnh sửa củaFlatsome (UX Builder).Nó sẽ không chỉ làm sạch các nội dung được thêm bởi các plugin khác, mã PHP của chúng cũng sẽ không chạy.Trình chỉnh sửa của Flatsome sẽ tải nhanh hơn và không có xung đột với các plugin khác. Cả hai plugin Freesoul Deactivate và Flatsome đều phải được cài đặt và hoạt động, trong trường hợp khác, plugin này sẽ không chạy.

      CÁCH DỌN DẸP TRÌNH CHỈNH SỬA FLATSOME

      • Cài đặt và kích hoạt Freesoul Deactivate Plugins nếu chưa hoạt động
      • Cài đặt và kích hoạt Flatsome nếu chưa hoạt động
      • Cài đặt và kích hoạt Trình dọn dẹp trình chỉnh sửa cho Flatsome
      • Vào Flatsome => Editor CLeanup
      • Nhấp vào “Dọn dẹp trình chỉnh sửa bên ngoài” để tắt các plugin mà trình chỉnh sửa bên ngoài không cần (thường là không cần plugin)
      • Nhấp vào “Dọn dẹp trình chỉnh sửa bên trong” để tắt các plugin mà trình chỉnh sửa bên trong không cần (trình chỉnh sửa bên trong giống như trang trên giao diện người dùng, nhưng được tải bên trong Trình tạo UX)
      • Nhấp vào “Dọn dẹp các hành động của trình chỉnh sửa” để tắt các plugin được gọi trong bất kỳ hành động nào được kích hoạt bởi UX Builder (cập nhật một phần tử, thêm một phần tử…) (thường không cần plugin, việc tắt plugin ở đây có thể giải quyết xung đột với các plugin khác)

      2. Flatsome Title With Category

      Plugin thêm thêm tiêu đề với phần tử danh mục sản phẩm cho chủ đề phẳng.

      3. Administrator Z

      Tính năng chức năng:
      1. Chức năng mặc định:
        • Thay đổi logo đăng nhập,
        • Tự động cập nhật wordpress, plugin, theme
        • Ẩn bảng điều khiển menu cho bất kỳ vai trò người dùng nào
        • Sử dụng trình chỉnh sửa cổ điển cho bài đăng
        • Hỗ trợ một số cấu hình PHP
        • Xác định hằng số của bạn
        • Hình thu nhỏ phân loại
      2. Yêu cầu:
        • Phông chữ bên ngoài và một số phông chữ được hỗ trợ
        • Các tệp JS bên ngoài và mã tùy chỉnh
        • Tệp CSS bên ngoài và mã tùy chỉnh
        • Tập lệnh mặc định và Thư viện JS được bao gồm và đăng ký bởi WordPress
      3. Nút nhóm liên hệ:
        • 4 phong cách
      4. Hỗ trợ Woocommerce
        • Tùy chỉnh nút thêm vào giỏ hàng
        • Thêm nút mua ngay bây giờ
        • Xóa trường quanity
        • trường thanh toán đơn giản: tên + điện thoại + địa chỉ
        • Liệt kê tất cả các móc tác vụ woocommerce cho các mã ngắn của bạn
        • Bộ lọc sản phẩm và biểu mẫu tìm kiếm
      5. Elementor
        • Hỗ trợ một số phần tử: Carouse, Đệ quy danh mục, Lưới bài đăng.
      6. Flatsome https://quyle91.github.io/administratorz/flatsome.html
        • Phần tử menu tiêu đề 3 tùy chỉnh mới
        • Hỗ trợ một số yếu tố:
          • Đếm ngược mới
          • Chế độ xem Đếm mới
          • Đã nhúng fanpage Facebook mới
          • Biểu tượng tùy chỉnh mới
          • Bản đồ mới với nhiều điểm đánh dấu
          • Bộ chọn điều hướng mới
          • Mới Đọc thêm Đọc ít hơn
          • Tìm kiếm biểu mẫu Woocommerce mới
          • Thanh trượt Flickity mới
          • Thanh trượt Fotorama mới
          • Số ngẫu nhiên mới.
          • Hộp đèn mới
          • Danh mục đầu tư mới và biểu mẫu tìm kiếm
        • 2 kiểu gói CSS
        • Trình biên tập MCE tí hon
        • Kiểu mới cho mục Danh sách: Danh sách Kiểu – Không có trong trình chỉnh sửa
        • Liệt kê tất cả các móc hành động Flatsome cho các mã ngắn của bạn
        • Dành cho AE Việt Nam: Có chức năng cho theme bất động sản (xem thêm trong document)
      7. Nhập dữ liệu
        • Đăng, sản phẩm woocommerce được hỗ trợ
        • Tự động lưu hình ảnh vào thư viện
        • loại bỏ thẻ html khác
        • Chỉ cần 1 cú nhấp chuột cho nhiều bài viết
      8. Người đưa thư
        • Cấu hình smtp của người gửi thư
      9. Công cụ khác
        • Thay thế hình ảnh: Giữ lại ID và url hình ảnh
      10. Sercurity
        • Tắt XML-RPC (bật tự động)
        • Tắt X-pingback (bật tự động)
        • Tắt API phần còn lại
        • Tắt chỉnh sửa tệp (bật tự động)

      4. Timeline Flatsome Addons

      5. EchBay For Flatsome

      Có thể tùy biến thêm một số vấn đề liên quan đến HTML một cách nhanh chóng, dễ dàng. Plugin cũng thêm 1 số widget để sử dụng thuận tiện hơn so với bản Flatsome mặc định.

      Hiển thị gallery của sản phẩm ra ngoài trang chủ

      Bước 1: Copy code vào functions.phpfunction create_gallery_product_box_congdongblog() { global $product; $product_cat = get_the_terms($product->get_ID(), 'product_cat' ); // var_dump($product_cat); if ( $product_cat && ! is_wp_error( $product_cat ) ) { echo '' . $product_cat[0]->name . ''; } $attachment_ids = $product->get_gallery_image_ids(); $count = count($attachment_ids); if ($attachment_ids) { $thumbnail = wp_get_attachment_image_src(get_post_thumbnail_id($product->get_ID())); $size_full = wp_get_attachment_image_src(get_post_thumbnail_id($product->get_ID()), "full"); echo '
      ‘; echo ‘
      ‘; $i = 0; foreach ($attachment_ids as $attachment_id) { if ($i < 3) { echo ‘
      ‘; echo ‘‘; echo ‘
      ‘; } if ($i == 3) { echo ‘Xem thêm + ‘ . ($count – $i) . ‘‘; } $i++; } echo ‘
      ‘; } } add_action(‘woocommerce_before_shop_loop_item_title’, ‘create_gallery_product_box_congdongblog’); add_action(‘wp_footer’,’add_script_footer_gallery’); function add_script_footer_gallery(){ } Code trên sẽ hiển thị gallery ở dưới ảnh đại diện, nếu bạn muốn hiển thị ở chổ khác hay bất kỳ nơi nào, bạn có thể thay hook bạn muốn vào chổ woocommerce_before_shop_loop_item_title nhé! Code CSS hiển thị gallery < code> .isures-thumb–wrap { position: absolute; bottom: 0; display: flex; } .isures-thumb–items{ max-width: calc(25% – 4px); width: 100%; margin-right: 5px; cursor: pointer; } .isures-thumb–items:nth-child(4){margin-right: 0} .isures-thumb–items.active{ border: 1px solid var(–isures-primary-color) } .isures-thumb–items img { border: 1px solid transparent } .isures-more–btn { position: absolute; right: 0; bottom: 0; width: 25%; height: 100%; background: rgba(0,0,0, .54); color: #fff!important; display: flex; align-items: center; justify-content: center; cursor: pointer; } .isures-more–btn span{font-size: 10px;text-align: center; font-weight: bold;} https://flatsomea-z.com/huong-dan-cach-hien-thi-gallery-cua-san-pham-ra-ngoai-trang-chu/

      Chèn ảnh thumbnail full-width ở trong post

      sử dụng hook flatsome_before_blog và gọi thumbnail của hình
      function add_thumnail_post_pttuan(){;?>
      <?php if (has_post_thumbnail() && is_single()){;?>
      <div class="thumbnail-pt">
          <?php the_post_thumbnail('full');?>
      </div>
      <?php };?>
      <style>
      .thumbnail-pt img{
      width:100%}
      </style>
      <?php }
      add_action('flatsome_before_blog','add_thumnail_post_pttuan');
      Tham khảo: pttuan410.com/lam-sao-de-chen-anh-full-width-o-dau-bai-post/

      Bật popup trong flatsome

      
      
      Giải thích thông số:
      • Auto_open: Tự động bật
      • auto_timer: Thời gian bao lâu để bật, đơn vị tính ms 3000ms = 3s
      • auto_show=once/always: Chỉ hiện 1 lần
      • width: chiều rộng của popup
      • padding: khoảng cách từ viền đến nội dung popup
      • block id=”popup” : tạo trong UX Blocks
      Cuối cùng, hãy vào Flatsome –> Advanced –> Global setting, chèn đoạn code trên vào Footer script rồi save lại là xong

      Chuyển widget về giao diện cũ ở WordPress 5.8

      Thêm đoạn code sau vào function.php
      add_filter( 'gutenberg_use_widgets_block_editor', '__return_false' );
      add_filter( 'use_widgets_block_editor', '__return_false' );

      Tạo gợn sóng phân cách bằng SVG

      Vào trang getwaves.io tạo gợn sóng như ý muốn và tải file về. Trước khi tải về nhớ chỉnh lại màu nền của đường gợn sóng lại.

      Có 2 section: 1 là Section bên trên có “margin = -15%” hoặc tùy ý bạn, mục đích để các layer trùng lên nhau. Section bên dưới bg_color="rgba(0, 0, 0, 0)" padding="-15%" và Banner chọn background là file svg vừa mới tải, bg_color="rgba(0, 0, 0, 0)"

      Thêm cột kích thước hình ảnh và sort được trong wordpress media

      Thêm cột kích thước file trong admin media nhằm cho biết dung lượng lớn không cần thiết lên website. Thay my-theme-text-domain bằng domain theme của bạn
      add_filter( 'manage_media_columns', 'codfe_media_columns_filesize' );
      /**
       * Filter the Media list table columns to add a File Size column.
       *
       * @param array $posts_columns Existing array of columns displayed in the Media list table.
       * @return array Amended array of columns to be displayed in the Media list table.
       */function codfe_media_columns_filesize( $posts_columns ) {
      $posts_columns['filesize'] = __( 'File Size', 'my-theme-text-domain' );
       
      return $posts_columns;
      }
       
      add_action( 'manage_media_custom_column', 'codfe_media_custom_column_filesize', 10, 2 );
      /**
       * Display File Size custom column in the Media list table.
       *
       * @param string $column_name Name of the custom column.
       * @param int    $post_id Current Attachment ID.
       */function codfe_media_custom_column_filesize( $column_name, $post_id ) {
      if ( 'filesize' !== $column_name ) {
      return;
      }
       
      $bytes = filesize( get_attached_file( $post_id ) );
       
      echo size_format( $bytes, 2 );
      }
       
      add_action( 'admin_print_styles-upload.php', 'codfe_filesize_column_filesize' );
      /**
       * Adjust File Size column on Media Library page in WP admin
       */function codfe_filesize_column_filesize() {
      echo
      '<style>
      .fixed .column-filesize {
      width: 10%;
      }
      </style>';
      }
       
      // Make column sortable
      function codfe_add_column_sortable_file_size($columns) {
        $columns['filesize'] = 'filesize';
        return $columns;
      }
      add_filter('manage_upload_sortable_columns', 'codfe_add_column_sortable_file_size');
       
       
      // Column sorting logic (query modification)
      function codfe_sortable_file_size_sorting_logic($query) {
        global $pagenow;
        if(is_admin() && 'upload.php' == $pagenow && $query->is_main_query() && !empty($_REQUEST['orderby']) && 'filesize' == $_REQUEST['orderby']) {
          $query->set('order', 'ASC');
          $query->set('orderby', 'meta_value_num');
          $query->set('meta_key', 'filesize');
          if('desc' == $_REQUEST['order']) {
            $query->set('order', 'DSC');
          }
        }
      }
      add_action('pre_get_posts', 'codfe_sortable_file_size_sorting_logic');

      Thêm bài viết liên quan theo danh mục cho blog

      Thêm tính năng cho Flatsome chèn đoạn code sau vào file functions.php của Child Theme
      /* Dev by Woovn */ add_shortcode('woovn_posts_related','flatsome_related_posts');
      function flatsome_related_posts(){
      ob_start();
      $categories = get_the_category(get_the_ID());
      if ($categories){
      echo '<div class="relatedcat">';
      $category_ids = array();
      foreach($categories as $individual_category) array_push($category_ids, $individual_category->term_id);
      $my_query = new wp_query(array(
      'category__in' => $category_ids,
      'post__not_in' => array(get_the_ID()),
      'posts_per_page' => 6
      ));
      $ids = wp_list_pluck( $my_query->posts, 'ID' );
      $ids = implode(',', $ids);
      if( $my_query->have_posts() ){
      echo '<h3>Bài viết liên quan</h3>';
      //echo do_shortcode('
        
          
      '); // Slider echo do_shortcode('
      '); // Row } echo '</div>'; } return ob_get_clean(); }
      Sau đó chúng ta chỉ việc chèn shortcode sau vào HTML after blog posts trong Tùy biến ▸ Blog ▸ Blog Single Post
      <!-- Chèn vào HTML after blog posts -->
      [woovn_posts_related]

      Bài viết liên quan theo tag

      Dán code này vào file functions.php của theme/child theme đang kích hoạt
      /*
       * Code bài viết liên quan theo tag
      */function bvlq() {
          global $post;
          $tags = wp_get_post_tags($post->ID);
          if ($tags){
              $output = '<div class="relatedcat">';
              $first_tag = $tags[0]->term_id;
              
              $args=array(
                  'tag__in' => array($first_tag),
                  'post__not_in' => array($post->ID),
                  'posts_per_page'=>3,
                  'caller_get_posts'=>1
              );
              $my_query = new wp_query($args);
              
              if( $my_query->have_posts() ):
                  $output .= '<p>Bài viết liên quan:</p><ul class="row related-post">';
                  while ($my_query->have_posts()):$my_query->the_post();
                  $output .= 
                      '<li class="col large-4">
                                      <a href="'.get_the_permalink().'" title="'.get_the_title().'">
                                          <div class="feature">
                                              <div class="image" style="background-image:url('. get_the_post_thumbnail_url() .');"></div>
                                          </div>                            
                                      </a>
                                      <div class="related-title"><a href="'.get_the_permalink().'" title="'.get_the_title().'">'.get_the_title().'</a></div>
                                  </li>';
                  endwhile;
                  $output .= '</ul>';
              endif; wp_reset_query();
              $output .= '</div>';
              return $output;
          }
          else return;
      }
      add_shortcode('bvlq', 'bvlq');

      Bài viết liên quan cùng Chuyên mục

      /*
       * Code bài viết liên quan theo chuyên mục
      */function bvlq_danh_muc() {
          $output = '';
          if (is_single()) {
            global $post;
            $categories = get_the_category($post->ID);
            if ($categories) {
              $category_ids = array();
              foreach($categories as $individual_category) $category_ids[] = $individual_category->term_id;
              $args=array(
                'category__in' => $category_ids,
                'post__not_in' => array($post->ID),
                'posts_per_page'=>3,
                'caller_get_posts'=>1
              );
              
              $my_query = new wp_query( $args );
              if( $my_query->have_posts() ):
                  $output .= '<div class="relatedcat">';
                      $output .= '<p>Bài viết liên quan:</p><div class="row related-post">';
                          while ($my_query->have_posts()):$my_query->the_post();
                          $output .= 
                              '<div class="col large-4">
                                  <a href="'.get_the_permalink().'" title="'.get_the_title().'">
                                      <div class="feature">
                                          <div class="image" style="background-image:url('. get_the_post_thumbnail_url() .');"></div>
                                      </div>                            
                                  </a>
                                  <div class="related-title"><a href="'.get_the_permalink().'" title="'.get_the_title().'">'.get_the_title().'</a></div>
                              </div>';
                          endwhile;
                      $output .= '</div>';
                  $output .= '</div>';
              endif;   //End if.
            wp_reset_query();
          }
          return $output;
        }
      }
      add_shortcode('bvlq_danh_muc','bvlq_danh_muc');
      chèn vào style.css của theme/child theme đang kích hoạt hoặc thêm vào CSS bổ sung trong Tuỳ biến của Flatsome
      .feature {
          position: relative;
          overflow: hidden;
      }
      .feature::before {
      content: "";
      display: block;
      padding-top: 56.25%;
      }
      .feature .image{
          position: absolute;
          top: 0;
          left: 0;
          bottom: 0;
          right: 0;
          margin: auto;
          background-size: cover;
          background-position: center;
      }
      ul.row.related-post li {
          list-style: none;
      }
      .related-title {
          line-height: 1.3 !important;
          margin-top: 10px !important;
      }
      Sau khi thêm đủ 2 cái đó cho con, chúng ta được 2 shortcode [“bvlq”] và [“bvlq_danh_muc”] (bỏ dấu ” ” khi copy nhé). Chúng ta chọn 1 loại rồi thêm vào Flatsome –> Theme Option –> Blog –> Blog Single Post, chúng ta kéo xuống dưới cùng, tới phần HTML after blog posts. Chúng ta chèn shortcode.

      Thu gọn nội dung chi tiết sản phẩm

      /*
      * Thêm nút Xem thêm vào phần mô tả của bài viết sản phẩm
      */add_action('wp_footer','hal_readmore_flatsome');
      function hal_readmore_flatsome(){
          ?>
          <style>
              .single-product div#tab-description {
                  overflow: hidden;
                  position: relative;
              }
              .single-product .tab-panels div#tab-description.panel:not(.active) {
                  height: 0 !important;
              }
              .hal_readmore_flatsome {
                  text-align: center;
                  cursor: pointer;
                  position: absolute;
                  z-index: 9999;
                  bottom: 0;
                  width: 100%;
                  background: #fff;
              }
              .hal_readmore_flatsome:before {
                  height: 55px;
                  margin-top: -45px;
                  content: "";
                  background: -moz-linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 100%);
                  background: -webkit-linear-gradient(top, rgba(255,255,255,0) 0%,rgba(255,255,255,1) 100%);
                  background: linear-gradient(to bottom, rgba(255,255,255,0) 0%,rgba(255,255,255,1) 100%);
                  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff00', endColorstr='#ffffff',GradientType=0 );
                  display: block;
              }
              .hal_readmore_flatsome a {
                  color: #318A00;
                  display: block;
              }
              .hal_readmore_flatsome a:after {
                  content: '';
                  width: 0;
                  right: 0;
                  border-top: 6px solid #318A00;
                  border-left: 6px solid transparent;
                  border-right: 6px solid transparent;
                  display: inline-block;
                  vertical-align: middle;
                  margin: -2px 0 0 5px;
              }
          </style>
          <script>
              (function($){
                  $(document).ready(function(){
                      $(window).on('load', function(){
                          if($('.single-product div#tab-description').length > 0){
                              var wrap = $('.single-product div#tab-description');
                              var current_height = wrap.height();
                              var your_height = 300;
                              if(current_height > your_height){
                                  wrap.css('height', your_height+'px');
                                  wrap.append(function(){
                                      return '<div class="hal_readmore_flatsome"><a title="Xem thêm" href="javascript:void(0);">Xem thêm</a></div>';
                                  });
                                  $('body').on('click','.hal_readmore_flatsome', function(){
                                      wrap.removeAttr('style');
                                      $('body .hal_readmore_flatsome').remove();
                                  });
                              }
                          }
                      });
                  });
              })(jQuery);
          </script>
          <?php
      }
      Lưu ý giá trị là 300. Đó chính là chiều dài của khung nội dung. Nếu muốn khung nội dung dài hay ngắn thì hãy chỉnh sửa thông số đó cho phù hợp.

      Thu gọn nội dung chi tiết danh mục sản phẩm

      /*
       * Thêm nút Xem thêm vào phần mô tả của danh mục sản phẩm
       * Author: anhlinhmkt - https://anhlinhmkt.com
      */add_action('wp_footer','hal_readmore_taxonomy_flatsome');
      function hal_readmore_taxonomy_flatsome(){
          if(is_woocommerce() && is_tax('product_cat')):
              ?>
              <style>
                  .tax-product_cat.woocommerce .shop-container .term-description {
                      overflow: hidden;
                      position: relative;
                      margin-bottom: 20px;t
                      padding-bottom: 25px;
                  }
                  .hal_readmore_taxonomy_flatsome {
                      text-align: center;
                      cursor: pointer;
                      position: absolute;
                      z-index: 10;
                      bottom: 0;
                      width: 100%;
                      background: #fff;
                  }
                  .hal_readmore_taxonomy_flatsome:before {
                      height: 55px;
                      margin-top: -45px;
                      content: "";
                      background: -moz-linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 100%);
                      background: -webkit-linear-gradient(top, rgba(255,255,255,0) 0%,rgba(255,255,255,1) 100%);
                      background: linear-gradient(to bottom, rgba(255,255,255,0) 0%,rgba(255,255,255,1) 100%);
                      filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff00', endColorstr='#ffffff',GradientType=0 );
                      display: block;
                  }
                  .hal_readmore_taxonomy_flatsome a {
                      color: #318A00;
                      display: block;
                  }
                  .hal_readmore_taxonomy_flatsome a:after {
                      content: '';
                      width: 0;
                      right: 0;
                      border-top: 6px solid #318A00;
                      border-left: 6px solid transparent;
                      border-right: 6px solid transparent;
                      display: inline-block;
                      vertical-align: middle;
                      margin: -2px 0 0 5px;
                  }
                  .hal_readmore_taxonomy_flatsome_less:before {
                      display: none;
                  }
                  .hal_readmore_taxonomy_flatsome_less a:after {
                      border-top: 0;
                      border-left: 6px solid transparent;
                      border-right: 6px solid transparent;
                      border-bottom: 6px solid #318A00;
                  }
              </style>
              <script>
                  (function($){
                      $(document).ready(function(){
                          $(window).on('load', function(){
                              if($('.tax-product_cat.woocommerce .shop-container .term-description').length > 0){
                                  var wrap = $('.tax-product_cat.woocommerce .shop-container .term-description');
                                  var current_height = wrap.height();
                                  var your_height = 300;
                                  if(current_height > your_height){
                                      wrap.css('height', your_height+'px');
                                      wrap.append(function(){
                                          return '<div class="hal_readmore_taxonomy_flatsome hal_readmore_taxonomy_flatsome_show"><a title="Xem thêm" href="javascript:void(0);">Xem thêm</a></div>';
                                      });
                                      wrap.append(function(){
                                          return '<div class="hal_readmore_taxonomy_flatsome hal_readmore_taxonomy_flatsome_less" style="display: none"><a title="Thu gọn" href="javascript:void(0);">Thu gọn</a></div>';
                                      });
                                      $('body').on('click','.hal_readmore_taxonomy_flatsome_show', function(){
                                          wrap.removeAttr('style');
                                          $('body .hal_readmore_taxonomy_flatsome_show').hide();
                                          $('body .hal_readmore_taxonomy_flatsome_less').show();
                                      });
                                      $('body').on('click','.hal_readmore_taxonomy_flatsome_less', function(){
                                          wrap.css('height', your_height+'px');
                                          $('body .hal_readmore_taxonomy_flatsome_show').show();
                                          $('body .hal_readmore_taxonomy_flatsome_less').hide();
                                      });
                                  }
                              }
                          });
                      });
                  })(jQuery);
              </script>
          <?php
          endif;
      }
      Tương tự như vậy giá trị là 300, đây là chiều cao của khung mô tả

      Đưa mô tả danh mục sản phẩm xuống dưới

      //* Đưa mô tả danh mục xuống dưới.
      remove_action('woocommerce_archive_description','woocommerce_taxonomy_archive_description', 10 );
      add_action( 'woocommerce_after_shop_loop', 'woocommerce_taxonomy_archive_description', 100 );

      Tạo ảnh WebP

      Đuôi ảnh .webp tối ưu, nhẹ. Sử dụng thử plugin WebP Converter for Media – Convert WebP & Optimize Images được cái:
      • Miễn phí
      • Hiển thị ảnh bằng chế độ “via .htaccess” (bạn xem ảnh vẫn thấy đuôi .jpg nhưng bấm save thì ra .webp). Có nghĩa ảnh được load là webp nhưng url cũ vẫn được giữ nguyên.
      • Nhiều tùy chọn, dư xài (chất lượng ảnh, auto convert, cache, redirect, regenerate…)
      Trình duyệt web nào chưa hỗ trợ WebP thì ảnh gốc (jpg, png) sẽ được hiển thị vì file .webp được tạo và đặt ở 1 folder riêng, không ảnh hưởng đến file media gốc của bạn.
      Lúc nào chán không muốn dùng nữa thì xóa plugin, xóa folder file webp đi là xong. Nhưng mà nên xài đi, mai mốt còn lên chuẩn AVIF nữa chứ
      https://wordpress.org/plugins/webp-converter-for-media/

      Tự động thêm tên file ảnh vào thuộc tính

      Thêm tính năng cho Flatsome Các thuộc tính của ảnh: tiêu đề ảnh, mô tả ảnh trong SEO rất là quan trọng. Một đoạn function để giúp các bạn có thể điền 1 cách tự động các thuộc tính này khi thêm 1 ảnh mới, thông tin thêm mới sẽ dựa trên tên file ảnh mà bạn đặt nhé.
      function abl_mc_auto_image_attributes( $post_ID ) {
        $attachment = get_post( $post_ID );
         
        $attachment_title = $attachment->post_title;
        $attachment_title = str_replace( '-', ' ', $attachment_title ); // Hyphen Removal
        $attachment_title = ucwords( $attachment_title ); // Capitalize First Word
         
        $uploaded_image = array();
        $uploaded_image['ID'] = $post_ID;
        $uploaded_image['post_title'] = $attachment_title; // Tiêu đề ảnh
        $uploaded_image['post_excerpt'] = $attachment_title; // Chi tiết ảnh
        $uploaded_image['post_content'] = $attachment_title; // Mô tả ảnh
         
        wp_update_post( $uploaded_image );
        update_post_meta( $post_ID, '_wp_attachment_image_alt', $attachment_title ); // Image Alt Text
      }
      add_action( 'add_attachment', 'abl_mc_auto_image_attributes' );
      khi các bạn thêm ảnh mới thì nó sẽ tự động cập nhật tiêu đề, chi tiết và mô tả ảnh.

      Chèn bài viết liên quan vào giữa bài viết

      Đầu tiên chúng ta sẽ viết 1 function để có thể hiển thị được các bài viết cùng category với bài viết hiện tại nhé, để có thể viết được function này. Các bạn tìm hiểu giúp mình về WP query. Đầu tiên sẽ tạo 1 shortcode có tên gọi là [post_pttuan]
      function recent_post_by_pttuan(){
          ob_start();
          $cats = wp_get_post_categories( get_the_ID(), array( 'fields' => 'ids' ) );
              $the_query = new WP_Query( array(
                  'post_type' => 'post',
                  'posts_per_page' => '5',
                  'post__not_in' => array(get_the_ID()),
                  'tax_query' => array(
                      array (
                          'taxonomy' => 'category',
                          'field' => 'term_id',
                          'terms' => $cats,
                      )
                  ),
              ) );
              if($the_query->have_posts()){
                  echo '<div class="pttuan_post_recent_main">';
                  echo '<h3 class="pttuan_post_recent_main_title text-center">Bài viết liên quan</h3>';
                  echo '<div class="pttuan_post_recent_container">';
                  while ( $the_query->have_posts() ):$the_query->the_post();?>
                  <div class="pttuan_post_recent_item">
                      <a href="<?php echo get_the_permalink();?>">
                      <div class="pttuan_post_recent_thumbnail">
                          <?php echo get_the_post_thumbnail();?>
                      </div>
                      <div class="pttuan_post_recent_title">
                          <?php echo get_the_title();?>
                      </div>
                      </a>
                  </div>
                  <?php endwhile;
                  echo '</div></div>';
              };
              wp_reset_postdata();
          $list_post = ob_get_contents();
          ob_end_clean();
          return $list_post;
      }
      add_shortcode('post_pttuan','recent_post_by_pttuan');
      Bạn có thể dán shortcode vào bất kì đâu để nó hiển thị các bài viết liên quan đến bài viết hiện tại, nếu bài viết nhiều category thì nó sẽ lấy nhiều category. Các bạn chú ý đến cái dòng ‘posts_per_page’ => ‘5’, Các bạn muốn hiển thị mấy bài viết thì sửa số 5 thành bất kì nhé. Hiển thị bài viết liên quan vào giữa bài post 1 cách tự động Để chèn ký tự hoặc 1 đoạn văn vào giữa bài post 1 cách tự động thì các bạn sẽ phải can thiệp vào filter của wordpress. Để chèn được vào giữa bài viết, cụ thể là mình sẽ chèn vào đoạn thứ 2 của bái viết (Enter 1 lần sẽ là 1 đoạn).
      add_filter('the_content', 'contentafter2para');
      function contentafter2para($content){
          if(is_single()){
              $pttuan_content = do_shortcode('[post_pttuan]');
              $after = 2;
              $end = '</p>';
              $content_pttuan = explode($end, $content);
              foreach($content_pttuan as $key => $cont){
                  if(trim($cont)) {
                      $content_pttuan[$key] .= $end;
                  }
                  if(($key + 1) == $after){  
                      $content_pttuan[$key] .= $pttuan_content;
                  }
              }
              $content = implode('', $content_pttuan);
          }
          return $content;    
      }
      Bạn chú ý đến đoạn $after = 2; giúp mình, nếu bạn mún nó hiển thị ở đoạn thứ 3 thì sửa thành 3 nhé. Thêm 1 chút CSS cho nó
      function css_custom(){;?>
      <style type="text/css">
          .pttuan_post_recent_main_title{
              color: #fff;
              font-weight: bolder;
              margin-bottom: 15px;
          }
          .pttuan_post_recent_main{
              background: #1d65d8;
              padding: 10px 5px;
              margin-bottom: 15px;
              border-radius: 5px;
          }
          .pttuan_post_recent_container{
              display: flex;
              justify-content: space-between;
          }
          .pttuan_post_recent_container>*{
              width: 19%;
              background: #fff;
              border-radius: 3px;
          }
          .pttuan_post_recent_thumbnail{
              height: 80px;
              overflow: hidden;
              margin-bottom: 10px;
          }
          .pttuan_post_recent_title{
              font-size: 14px;
              line-height: 1.25;
              padding: 0 5px;
          }
          @media only screen and (max-width: 48em) {
              .pttuan_post_recent_container>*{
                  width: 30%;
                  margin-right: 10px;
              }
              .pttuan_post_recent_container>*:last-child{
                  margin-right: unset;
              }
              .pttuan_post_recent_container{
                  overflow-x: scroll;
                  flex-flow: unset;
                  display: -webkit-box;
              }
              .pttuan_post_recent_thumbnail{
                  height: 50px;
                  margin-bottom: 5px;
              }
              .pttuan_post_recent_title{
                  font-size: 11px;
              }
          }
      </style>
      <?php }
      add_action('wp_footer','css_custom');

      Cuộn trang Landing Page với “Scroll To”

      Trong bài viết này, để các bạn dễ hình dung, mình sẽ lấy ví dụ khi chúng ta click vào button “Nhận Báo Giá“, trang Landing Page sẽ cuộn xuống mục “BáoGiá“. Đầu tiên các bạn mở trình chỉnh sửa UX-Builder lên -> “Addelements” -> Chọn “ScrollTo” -> Tại đây các bạn nhập thông tin:
      • Tiêu đề/Title: Title này sẽ hiển thị tại bullet/chấm tròn bên phải màn hình Desktop khi người dùng rê chuột đến.
      • Link: các bạn set link bắt đầu với#link.
      • Bullet: On hoặc Off để tùy chọn hiển thị chấm tròn bên phải màn hình Desktop.
      Sau đó, các bạn click và kéo mục “ScrollTo” đến section mà bạn cần cuộn trang đến. Và chọnbuttoncần chèn link, kéo xuống mục liên kết, paste link#linkmà bạn đã đặt vào.(Như ví dụ ở hình dưới, mình đã set link cho “Scroll To” là #baogia). Thêm tính năng cho Flatsome Để chèn link cuộn trang lên thanh menu, các bạn truy cập vào trang quản trị, các bạn chọn “Giaodiện” -> “Menu” -> Chọn “Menu” cần sửa -> Chọn “Liênkếttựtạo” -> Nhập link & Tiêu đề Menu -> “ThêmvàoMenu” -> kéo menu đến vị trí bạn cần đặt & “LưuMenu” để cập nhật. Thêm tính năng cho Flatsome Ẩn thông báo trong trang quản trị
      // yellow pencil, flatsome activation nag remover
      function admin_css() {
       echo '<style type="text/css">
      #update-nag, .update-nag, .wrap .yellowpencil-notice, #flatsome-notice {display: none !important;}
       </style>';
      }
      add_action('admin_head', 'admin_css');    

      Thêm Nút Huỷ Đơn Hàng Cho Khách Sau Khi Thanh Toán

      Thêm nút “Huỷ đơn hàng” trong trang tài khoản của khách hàng với 1 đoạn code vô cùng đơn giản. //Cho phép KH huỷ đơn hàng sau khi thanh toán add_filter( 'woocommerce_valid_order_statuses_for_cancel', 'custom_valid_order_statuses_for_cancel', 10, 2 ); function custom_valid_order_statuses_for_cancel( $statuses, $order ){ // Cài đặt các trạng thái mà bạn cho phép khách hàng huỷ $custom_statuses = array( ‘completed’, ‘pending’, ‘processing’, ‘on-hold’, ‘failed’ ); // Cài đặt số ngày được phép huỷ kể từ khi đặt đơn $duration = 3; // 3 days // Lấy ID đơn đặt hàng và WC_Order if( isset($_GET[‘order_id’])) $order = wc_get_order( absint( $_GET[‘order_id’] ) ); $delay = $duration*24*60*60; // (duration in seconds) $date_created_time = strtotime($order->get_date_created()); // Creation date time stamp $date_modified_time = strtotime($order->get_date_modified()); // Modified date time stamp $now = strtotime(“now”); // Now time stamp // Using Creation date time stamp if ( ( $date_created_time + $delay ) >= $now ) return $custom_statuses; else return $statuses; }

      Thêm ảnh sản phẩm ở trang thanh toán

      đơn hàng của trang thanh toán mặc định của woocommerce hiển thị tên sản phẩm, số lượng và tổng tiền nhưng không hiển thị hình ảnh đại diện của sản phẩm. Nếu bạn muốn hiển thị thêm hình ảnh nổi bật của sản phẩm giúp khách hàng kiểm tra lại trước khi đặt hàng. add_filter( 'woocommerce_cart_item_name', 'flatsomeaz_product_image_review_order_checkout', 9999, 3 ); function flatsomeaz_product_image_review_order_checkout( $name, $cart_item, $cart_item_key ) { if ( ! is_checkout() ) return $name; $product = $cart_item[‘data’]; $thumbnail = $product->get_image( array( ’50’, ’50’ ), array( ‘class’ => ‘alignleft’ ) ); return $thumbnail . $name; }

      Xoá hình ảnh thừa trên website không cần dùng plugin

      add_filter('intermediate_image_sizes', function ($sizes) { return array_diff($sizes, ['medium_large']); // Medium Large (768 x 0) }); // add_action('init', 'remove_extra_image_sizes'); function remove_extra_image_sizes() { $sizes = array(); foreach (get_intermediate_image_sizes() as $size) { if (!in_array($size, $sizes)) { remove_image_size($size); } } }

      flatsome addon

      Link: https://wordpress.org/plugins/administrator-z https://wordpress.org/plugins/wp-extra/

      Hiển thị thêm mô tả sản phẩm khi hover sản phẩm ngoài trang chủ

      Thêm tính năng cho Flatsome Thêm đoạn này vào function function add_mota(){ global $post; echo '
      ‘; echo ‘‘; echo ‘

      ‘.get_the_title().’

      ‘; echo get_the_excerpt(); echo ‘‘; echo ‘
      '; } add_action('flatsome_product_box_tools_top','add_mota'); Tiếp theo thêm css .image-tools.top.right{ right:unset; left:0; padding: 0; } .exc-custom{ background: rgba(0, 0, 0, 0.6) none repeat scroll 0 0; padding:10px; } .exc-custom *{ color:#fff!important; } .title-custom { font-size: 15px; font-weight: bold; }

      HƯỚNG DẪN CHẶN XUẤT / NHẬP DỮ LIỆU WEBSITE WORDPRESS

      Trong một số trường hợp. Người thiết kế Website hoặc chủ Website muốn chống bị xuất dữ liệu website khi bàn giao cho ‘Tuesday‘ như Ads Agency, SEO Agency, Content Agency … thì function đơn giản dưới đây sẽ giúp Quý anh chị và các bạn làm điều đó. Tuy nhiên function này nên sử dụng kết hợp với chống sửa theme thì sẽ mang lại hiệu quả tốt nhất nhé. Bước 1: Copy và Paste function này vào tệp function.php của Theme đang hoạt động và lưu lại:add_action('admin_menu', function() { remove_submenu_page( 'tools.php', 'export.php' );remove_submenu_page( 'tools.php', 'import.php' ); });Bước 2: Reload lại trang chúng ta sẽ thấy mục Nhập vào / Xuất ra (Export / Import) sẽ không còn nữa. Như thế là đã thành công. Bước 3: NÂNG CAO Trong trường hợp gặp người dùng có quyền chỉnh sửa Theme. Người ta có thể can thiệp vào file function.php thì chức năng này là vô ích. Vì thế ta cần truy cập vào Hosting / VPS của mình. Sau đó copy dòng dưới đây và dán vào vị trí: ../public_html/wp-config.phpdefine( 'DISALLOW_FILE_EDIT', true );  Nguồn: https://pttuan410.com/huong-dan-cach-chen-bai-viet-lien-quan-vao-giua-bai-viet/ https://pttuan410.com/huong-dan-tang-diem-google-speed-insight-voi-plugin-litespeed/ https://pttuan410.com/huong-dan-tao-popup-co-the-bat-tat-cho-website-cua-ban-ma-khong-can-dung-plugin/ https://pttuan410.com/mot-so-hook-co-ban-cua-theme-flatsome-p-2/ https://pttuan410.com/mot-so-hook-co-ban-cua-theme-flatsome-p-1/

      Clone website về máy cục bộ bằng TTrack

      Clone website về máy cục bộ bằng TTrack
      Nội dung

        Đây là công cụ được đánh giá là tốt nhất hiện nay. Trước đây mình có sử dụng nhiều công cụ để rip giao diện web nhưng đều không ăn thua, các tài nguyên như ảnh, js,css không được tải về hay mã html còn thiếu.

        Vấn đề đầu tiên mình gặp phải với HTTrack là phần mềm này có quá nhiều tính năng, thật choáng ngợp , những gì mình trình bày trong bài viết này là kỹ năng và công thức mình đã thực hành thành công.

        Có 2 phiên bản sử dụng, phiên bản giao diện và sử dụng lệnh command line. Mình khuyến khích sử dụng lệnh vì nó chính xác hơn.

        vào cmd trỏ vào thư mục cài đặt “c:\Program Files\WinHTTrack” gõ thử: httrack để test. Nếu sử dụng lâu dài thì có thể thêm vào “system environment variables windows, để sử dụng thư viện command line ở mọi folder không cần phải trỏ vào thư mục gốc của nó.

        Nhập vào lệnh sau:

        httrack "http://demo.hoangweb.com/thevistaanphu" -O "/tmp/thevistaanphu" "+*.hoangweb.com/*" -v
        

        Câu lệnh trên sẽ tải toàn bộ nội dung website có địa chỉ là “http://demo.hoangweb.com/thevistaanphu” và lưu vào thư mục c:/tmp/thevistaanphu. Giới hạn chỉ download page và tài nguyên đến từ domain hoangweb.com

        Tham số-Onghĩa là “output to” (lưu vào đâu đó),-v: verbose (hiển thị toàn bộ tiến trình tải dữ liệu (gồm thành công và lỗi nếu gặp phải) ra cửa sổ lệnh).

        Đây là lệnh phổ biến nhất mà tôi hay sử dụng. Chú ý: kiên trì đợi vài phút để quá trình tải dữ liệu của website hoàn tất.

        Clone website về máy cục bộ bằng TTrack

         

        Cấu trúc dữ liệu tải về

        Các file tải về được lưu có cấu trúc theo địa URL. Ví dụ: ở ví dụ trên httrack tải địa chỉ http://demo.hoangweb.com/thevistaanphu, đây là website sử dụng mã nguồn wordpress, vào website này chúng ta thấy có ảnh logo, và các ảnh được lấy ra ở trong theme.

        http://demo.hoangweb.com/thevistaanphu/wp-content/photography_uploads/1-logo1[1].jpg
        http://demo.hoangweb.com/thevistaanphu/wp-content/themes/elegant-photography/images/progress.gif
        ...
        

        Như vậy ảnh 1-logo1[1].jpg này sẽ được lưu tại folder:
        c:/tmp/thevistaanphu/demo.hoangweb.com/thevistaanphu/wp-content/photography_uploads/
        Ảnh progress.gif nằm ở folder:
        c:/tmp/thevistaanphu/demo.hoangweb.com/thevistaanphu/wp-content/themes/elegant-photography/images/

        .Nếu có external link ngoài domain hoangweb.com thì tài nguyên đến từ domain đó vẫn được lấy dữ liệu.

        Sử dụng trợ giúp về lệnh, nếu bạn không chắc chắn về cách sử dụng lệnh đó, hãy gõ:httrack --helpđể tra.

        Cú pháp

        httrack www.all.net/bob/
        

        lệnh này khá đơn giản , các options được sử dụng mặc định. Gõ:httrack --helpbạn sẽ thấy giá trị mặc định của các tham số như sau:

        w *mirror web sites
         %f *use proxy for ftp (f0 don't use)
          cN number of multiple connections (*c8)
          RN number of retries, in case of timeout or non-fatal errors (*R1)
         %P *extended parsing, attempt to parse all links, even in unknown tags or Javascript (%P0 don't use)
          NN  name conversion type (0 *original structure, 1+: see below)
          LN  long names (L1 *long names / L0 8-3 conversion)
          KN   keep original links (e.g. http://www.adr/link) (K0 *relative link)
          o *generate output html file in case of error (404..) (o0 don't generate)
          X *purge old files after update (X0 keep delete)
          bN  accept cookies in cookies.txt (0=do not accept,* 1=accept)
          u check document type if unknown (cgi,asp..) (u0 don't check, * u1 check but /, u2 check always)
          j *parse Java Classes (j0 don't parse)
          sN  follow robots.txt and meta robots tags (0=never,1=sometimes,* 2=always)
          C  create/use a cache for updates and retries (C0 no cache,C1 cache is prioritary,* C2 test update before)
          f *log file mode
          I *make an index (I0 don't make)
          pN priority mode: (* p3)  *3 save all files
          D  *can only go down into subdirs
          a  *stay on the same address
          --mirror       *make a mirror of site(s) (default)
        

        Giải thích:

        Lọc các link tải về
        Cho phép chỉ tải các link có chứa domain, subdomain hoặc URL chứa một chuỗi nào đó có hỗ trợ widcat.

        httrack www.hoangweb.com/lien-he/ "+*.hoangweb.com/*" -v
        

        Print Debug
        Để hiển thị thông tin tiến trình tải dữ liệu sử dụng thêm tham số-v(verbose).

        httrack www.hoangweb.com/lien-he/ -v
        

        Tham số -B
        Cho phép tải URL ở sub-level. Ví dụ:

        httrack www.all.net/bob/ -B
        

        Trương trình không chỉ tải những URL con có chứa đường dẫnwww.all.net/bob/mà sẽ tải cả URL như: www.all.net/joe/, www.all.net/bob/deeper/

        w *mirror web sites
        tải dữ liệu của URL hiện tại và tự động quét các link có trong nội dung của URL đó và tiếp tục download dữ liệu của các link đó.

        %f *use proxy for ftp (f0 don’t use)
        nếu có link ftp (ie: ftp://) thì sử dụng ftp proxy server để tải về.

        cN number of multiple connections (*c8)
        cho phép 8 URL được download cùng một lúc. Ví dụ sau cho phép hoạt động 4 URLs cùng một lúc, thay vì mặc định là 8.

        httrack www.all.net/bob/ -c4 -B
        

        RN number of retries, in case of timeout or non-fatal errors (*R1)
        Cố gắng download URL một lần nữa nếu URL đó bị lỗi.

        %P *extended parsing, attempt to parse all links, even in unknown tags or Javascript (%P0 don’t use)
        quyét toàn bộ URLs thậm trí tìm thấy cả trong javascript,java và mọi nơi còn lại mà phần mềm có thể tìm thấy.

        NN name conversion type (0 *original structure, 1+: see below)
        Lưu lại đúng cấu trúc thư mục và tên file được sử dụng trong trang web. Như đã giải thích ở trên ví dụ ta có ảnhloading.gifsử dụng trên website có địa chỉ:

        http://localhost/hoangweb/wp-content/themes/abc/images/loading.gif
        

        ảnh này sẽ được lưu về có cấu trúc folder theo cấu trúc URL đến ảnh đó là: hoangweb/wp-content/themes/abc/images/loading.gif
        Tham số mặc định của httrack làN0, bạn có thể viết thêm tham số này tuy nhiên nếu sử dụng giá trị mặc định thì không cần chỉ định.

        httrack http://localhost/hoangweb/wp-content/themes/abc/images/loading.gif -N0 -g -O /tmp/images
        

        Tuy nhiên, tất cả files tài nguyên bạn muốn tải về chung một thư mục thì chỉ số 0 bằng 1

        httrack http://localhost/hoangweb/wp-content/themes/abc/images/loading.gif -N1 -g -O /tmp/proj1
        

        Lệnh trên sẽ tải file loading.gif vào thư mục “/tmp/proj1/web/images”. Nếu bạn cung cấp địa chỉ website hoặc URL tới một file mà nội dung có chứa các liên kết của những files tài nguyên khác. Tất cả những files tìm thấy sẽ đều lưu vào thư mục này. Bạn sẽ dễ quản lý hơn, trong những trường hợp rip giao diện của website. Đây cũng là cách để bạn lấy tất cả các file tài nguyên có trong file css.

        LN long names (L1 *long names / L0 8-3 conversion)
        mặc định lưu file với tên sử dụng trên website.

        K keep original links (e.g. http://www.adr/link) (K0 *relative link)
        ví dụ tải về nội dung web có địa chỉ: http://demo.hoangweb.com/thevistaanphu/gioi-thieu/ thì file html của nó nằm tại: /thevistaanphu/gioi-thieu/index.html

        o *generate output html file in case of error (404..) (o0 don’t generate)
        nếu có xẩy ra lỗi trong khi tải URL, trương trình sẽ tạo một file thay thế với nội dung thông báo URL đó đã bị lỗi (404 not found).

        bN accept cookies in cookies.txt (0=do not accept,* 1=accept)
        cho phép tất cả các cookies hoạt động nếu được yêu cầu, một số site cần duy trì cookie để sử dụng cho nhiều trang nó sẽ hoạt động như trên trình duyệt bình thường nên bạn không phải lo lắng.

        u check document type if unknown (cgi,asp..) (u0 don’t check, * u1 check but /, u2 check always)
        Phân tích những kiểu file không phải là html,image type như asp, php,…những file này có thể được tải về.

        j *parse Java Classes (j0 don’t parse)
        Cho phép phân tích và tìm URL ở java class file.

        sN follow robots.txt and meta robots tags (0=never,1=sometimes,* 2=always)
        có sử dụng robots.txt để chặn những URL không được phép truy cập.

        C create/use a cache for updates and retries (C0 no cache,C1 cache is prioritary,* C2 test update before)
        nếu bạn đang tải một website mà đã tải trước đó rồi, thì những URL cũ sẽ bị bỏ qua và chỉ tải những URL mới “If-Modified-Since“.

        f *log file mode
        lưu tại vào file log những hoạt động quan trọng diễn ra trong quá trình download.

        I *make an index (I0 don’t make)
        tạo file index.html là file chính của URL từ file này có liên kết tới các URL khác đã được download.

        pN priority mode: (* p3) *3 save all files
        lưu lại tất cả các file đã được tải về.

        a *stay on the same address
        Mỗi một domain được lưu vào một thư mục có cùng tầng, theo cấu trúc URL. Ví dụ trên: http://demo.hoangweb.com/thevistaanphu có liên kết tới domain www.pinterest.com như vậy chúng ta có 2 thư mục.
        chứa tại c:\tmp\thevistaanphu\demo.hoangweb.com và c:\tmp\thevistaanphu\www.pinterest.com

        –mirror *make a mirror of site(s) (default)
        cố gắng download hết tài nguyên có thể theo như cấu hình đã lập.

        Chi tiết câu lệnh

        General Options

        Chỉ định lưu dữ liệu tải về

        Sử dụng tham số -O theo sau là đường dẫn thư mục bạn muốn lưu.

        httrack http://www.shoesizes.com -O /tmp/shoesizes
        

        Action Options

        Tham số:

        • -w *không đưa ra câu hỏi nhưng có xác nhận để cho phép trương trình tiến hành tải dữ liệu của website (mirror web sites).
        • -W trong quá trình tải dữ liệu có đưa ra lựa chọn để mirror web sites.
        • -g just get files (saved in the current directory)
        • -i tiếp tục chạy nếu gặp lỗi interrupted do lỗi không gian đĩa hoặc bị mất mạng (vì sử dụng cache)
        • -Y mirror ALL links located in the first level pages (mirror links)

        Ví dụ Tham số -W

        httrack http://www.shoesizes.com -O /tmp/shoesizes -W 
        

         

        Clone website về máy cục bộ bằng TTrack

        Ví dụ Tham số -w

        httrack http://www.shoesizes.com -O /tmp/shoesizes -w
        

         

        Clone website về máy cục bộ bằng TTrack

        Tham số -g

        cho phép tải file một cách chính xác có trên địa chỉ URL. Ví dụ sau đây trương trình sẽ hiểu là tải file binary “windrv32.exe” không phải tải file windrv32.html.

        httrack -g www.mydrivers.com/drivers/windrv32.exe
        

        Nếu URL không chỉ định kiểu tệp thì mặc định sử dụng định dạng .html
        Do vấn đề bảo mật, web server không cho phép bất kỳ một trương trình nào có thể tải các file sử lý trên server như .asp, .php, .cgi một cách bất hợp pháp.

        Tham số -i

        tiếp tục thực hiện lại tiến trình tải URL nếu gặp lỗi như do ổ đĩa không còn dung lượng trống hay đột ngột bị mất mạng, bạn nên sử dụng tham số này sẽ rất có ích.

        httrack http://www.shoesizes.com -O /tmp/shoesizes -i
        

        Tải tất cả các links chỉ ở level đầu tiên của page URL.

        Chỉ tải tất cả các links ở level đầu tiên của URL. Nó rất hữu ích nếu page URL có nhiều external Link mà bạn muốn lấy dữ liệu của chúng.

        httrack http://www.shoesizes.com/othersites.html -O /tmp/shoesizes -Y 
        

         

        Clone website về máy cục bộ bằng TTrack

        Proxy Options

        Một số tính năng trên web sử dụng proxy, khi bạn vào website thấy xuất hiện hộp thoại đăng nhập đó là yêu cầu tài khoản proxy.

        Clone website về máy cục bộ bằng TTrack

        Tham số proxy có dạng:

        -P proxy:port or -P user:[email protected]:port
        Clone website về máy cục bộ bằng TTrack
        

         

        Proxy anonymizing access

        Sử dụng mặc định proxy không yêu cầu user ID và password, thực hiện câu lệnh như ví dụ dưới đây:

        httrack http://www.shoesizes.com -O /tmp/shoesizes -P proxy.www.all.net:8080
        

        Trường hợp trên, mình giả sử có dịch vụ proxyproxy.www.all.net, sử dụng port 8080

        authorized access proxy

        Một số trường hợp proxy có yêu cầu user ID và password để hợp pháp truy cập vào tài nguyên web.

        httrack http://www.shoesizes.com -O /tmp/shoesizes -P fc:[email protected]:8080
        

        Ở đây, userID=’fc’ và password=’password’

        Ví dụ download tài nguyên từ FTP server
        FTP là một ví dụ về proxy server, với ftp server thêm vào tham số-%f0. Ví dụ:

        httrack ftp://ftp.shoesizes.com -O /tmp/shoesizes -%f0
        

        HTTrack không phải là công cụ chuyên dụng để tải ftp files. Tuy nhiên có thể sử dụng httrack có thể tải một file hoặc các tệp trong một folder trên FTP. Ví dụ:
        ftp://ftp.somesite.com/pub/files/file010.ziphoặcftp://ftp.somesite.com/pub/files/.

        Limits Options

        Giới hạn chiều sâu tìm kiếm URL

        Để tránh tải toàn bộ các page của web một cách lãng phí và mất nhiều thời gian chờ đợi, đôi khi bạn đang chỉ cần copy giao diện của 1 page thôi. Điều này rất hữu ích bằng việc sử dụng tham số-rtheo sau là mức độ level. Ví dụ sau, sẽ giới hạn độ sâu link tới 5 level.

        #5 level
        httrack http://www.shoesizes.com -O /tmp/shoesizes -r5
        ...
        

        Giới hạn số lượng mức

        Trên thực tế một website không đến độ sâu 20 level tức link chứa trong link tới 20 lần, giả sử có website như vậy các bạn hãy thử nghĩ nếu có 2 subdirectory trong mỗi directory mà lệnh cho phép tìm tới 50 level như vậy sẽ là 10 tỷ directories ->con số này viễn tưởng gây ra lặp vô hạn (infinite loop) cho httrack. Cách tốt nhất là giới hạn số lượng directories sử dụng tham số-m. Ví dụ giới hạn tổng tối đa 50000000 directories được tải về.

        httrack http://www.shoesizes.com -O /tmp/shoesizes -m50000000
        

        Giới hạn dung lượng file .html được tải về

        httrack http://www.shoesizes.com -O /tmp/shoesizes -m50000000,100000
        

        Ví dụ trên thiết lập giới hạn kích thước cho .html file là 100,000 bytes. Thêm đối số thứ 2 vào tham số-mbởi dấu phẩy. Tuy nhiên HTML file hiếm khi có dung lượng lớn hơn thế, tuy nhiên trong một vài trường hợp chúng ta sẽ cần dùng.

        Giới hạn tổng dung lượng tải về

        Nếu ban quan tâm tới dung lượng tải về thì sử dụng tham số-Mcó thể giới hạn được dung lượng cần tải về tránh phung phí dung lượng ổ đĩa.

        httrack http://www.shoesizes.com -O /tmp/shoesizes -M1000000000
        

        Ví dụ trên, giới hạn tới 1 gigabyte

        Giới hạn độ sâu external link

        Ví dụ sau đây sẽ chỉ tìm tới 5 level cho externel link.

        httrack http://www.shoesizes.com -O /tmp/shoesizes %e5
        

        Các lệnh khác xem chi tiết tại: https://www.httrack.com/html/fcguide.html

        Mình vừa liệt kê một số tính năng hay dùng, Ngoài ra còn rất nhiều tham số khác mình chưa có dịp nêu ra ở đây. Nhưng đối với những ai dùng vào việc sao chép giao diện web hay tải web về ổ đĩa để đọc offline thì những lệnh trên đủ để bạn xài rồi.

        Lọc định dạng file muốn tải về

        Bạn có thể chỉ định một số kiểu file cho phép tải về thay vì download rất nhiều file mà không sử dụng đến, bằng cách sử dụng ký tự wildcards.

        Quét file trên URL

        Ví dụ, tôi sẽ tải tất cả các file từ .zip hoặc .gif
        bạn khai báo định dạng file với dấu + là cho phép và dấu – là bỏ qua:-*.gifhoặc cho phép file swf <code+*.swf.
        Ví dụ đầy đủ:

        $ httrack http://www.hillstate.com.vn/customer/vip.asp -O /tmp/save -B -N1 -r1 +*.gif
        

        Scan rule dựa vào kích thước

        Cũng dựa vào kiểu lọc wildcard này mà có thể chỉ quét các file theo mẫu URL. Ví dụ bạn sẽ muốn tất cả các file trên đường link domain www.example.com, sử dụng pattern: ‘+www.example.com/*‘. Thêm vào đó lấy các file gif nhưng giới hạn kích thước file từ 5->100 kb. Nghĩa là sẽ bỏ qua file dưới 5KB và trên 100KB.

        +www.example.com +*.gif -*.gif*[<5] -*.gif*[>100]
        

        Quét MIME Type File

        Xác định nội dung của đường link. Bạn không biết chính xác URL trả về nội dung gì, có thể là html và có thể là data content. vd: www.example.com/dynamic.php trường hợp link này tạo image, pdf…
        Sử dụng nguyên-*.gifsẽ không loại bỏ được trong URL tạo dữ liệu file động, bạn cần tham sốmime
        Ví dụ:-mime:image/gif,
        +mime:image/gif'
        -mime:*/* +mime:text/html +mime:image/gif

        Xem thêm các mẫu patterns quét file tại địa chỉ:https://www.httrack.com/html/filters.html.

        Tối ưu hóa hình ảnh cho tìm kiếm – SEO hình ảnh

        Lưu bản nháp tự động
        Nội dung

          Sự thật là có rất nhiều thứ liên quan đến SEO hình ảnh hơn là thẻ alt và tên file. Trên thực tế, những tiến bộ gần đây của Google trong học máy – mà chúng tôi có thể phần nào đánh giá được hiệu quả của sản phẩm API tầm nhìn đám mây của họ thực sự cho thấy họ đã có thể xác định nội dung của hình ảnh mà không cần dựa vào thẻ alt. Vì vậy, bạn thậm chí nên tập trung vào điều gì khi nói đến hình ảnh trên trang web của bạn? Bạn thậm chí vẫn có thể tối ưu hóa hình ảnh cho tìm kiếm?
          Bởi vì không ai muốn đọc một bài báo dài mà không có một hình ảnh nào. Không có hình ảnh, nội dung ở mức trung bình và nhàm chán. Cũng giống như thiết kế trang web nói chung, việc sử dụng biểu đồ, đồ họa và các công cụ hỗ trợ trực quan cho nội dung khác trong nội dung của bạn sẽ giúp nó nổi bật. Chúng đóng một vai trò rất lớn trong việc làm cho nội dung chuyển đổi, có thể chia sẻ và liên kết được. Vì vậy, cách đơn giản nhất để nói – nếu bạn có khả năng (thời gian / nguồn lực) để làm như vậy, hãy thêm hình ảnh vào tất cả nội dung của bạn ở những nơi phù hợp để giúp nó nổi bật. Hãy nghĩ về những gì bạn mong đợi sẽ thấy khi xem một bài báo về chủ đề bạn đang viết.

          Đặt tên cho tất cả các tệp hình ảnh một cách thích hợp

          Lời khuyên của Google về tên tệp hình ảnh vẫn nhất quán – họ nói rằng tên tệp có thể cung cấp cho Google manh mối về chủ đề của hình ảnh. Đặc biệt lưu ý rằng một tiêu đề như my-new-black-kitten.jpg tốt hơn đáng kể so với IMG00023.jpg.

          Lưu bản nháp tự động

          Do đó, chúng tôi khuyên bạn nên tránh nhập hoặc sao chép & dán hình ảnh từ các tài liệu word (vì điều này dẫn đến tiêu đề như word-image-1.jpg), điều này rõ ràng là không mong muốn theo lời khuyên của Google.

          Lưu ý:Dù bạn làm gì, đừng nhồi nhét tên tệp hình ảnh với từ khóa, tức là hình ảnh trên có thể có tiêu đề là chocolate-chip-cookie.jpg. Nhưng đặt tiêu đề cho nó là chocolate-chip-cookie-cookies-baking.jpg chỉ vì lợi ích của việc có thêm các từ khóa trong đó là một phương pháp không tốt và chúng tôi sẽ thận trọng khi không thử điều này.

          2Sử dụng Phụ đề & Văn bản Thay thế Hình ảnh Mô tả

          Thẻ thay thế và Văn bản thay thế là gì?

          Văn bản thay thế (còn được gọi là thẻ alt) là viết tắt của văn bản thay thế được sử dụng để mô tả hình ảnh trên trang web. Mặc dù có thể nhìn thấy khi xem nguồn HTML của một trang, nókhôngnhằm mục đích hiển thị trên chính trang nơi hình ảnh được hiển thị. Nó phục vụ nhiều mục đích, bao gồm và chủ yếu để giúp các công cụ đọc màn hình mô tả hình ảnh cho người đọc khiếm thị của bạn. Và, tất nhiên, các công cụ tìm kiếm cũng sử dụng nó để thu thập thông tin và hiểu các trang web tốt hơn.

          Nguyên tắc chính thức của Google bao gồm một ví dụ về cú pháp HTML cho văn bản thay thế – được hiển thị bên dưới:

          <img src = ”cún con.jpg” alt = ”Chú chó đốm đang chơi gắp” />

          Họ cũng tuyên bố rằng trênthực tế,Googlesử dụngvăn bản thay thế với các thuật toán thị giác máy tính và nội dung của trang để hiểu chủ đề của hình ảnh. Ngoài ra, lời khuyên của họ khi chọn văn bản thay thế nào để sử dụng cho bất kỳ hình ảnh nào trên trang web của bạn là luôn tạo nội dung hữu ích, giàu thông tin, sử dụng từ khóa theo cách phù hợp trong ngữ cảnh của trang web mà họ đang truy cập. Tóm lại, một lần nữa tuân thủ các nguyên tắc tương tự như sau đối với tên tệp hình ảnh – tránh lạm dụng lạm dụng các từ khóa có thể khiến nội dung trang web của bạn bị coi là spam.

          May mắn thay, Rank Math thực sự làm cho nó có thể tự động hóa quá trình thay thế văn bản. Các thuộc tính alt bị thiếu có thể tự động được thêm bằng cách sử dụng các biến khác nhau như tên tệp của chúng (như đã đề cập trước đó nên được đặt theo cách thủ công thành một thứ gì đó phù hợp), v.v.

          Lưu bản nháp tự động

          Và, Rank Math thay đổi giá trị văn bản thay thế hình ảnh trên giao diện người dùng của trang web của bạn (tức là không thay đổi giá trị được lưu trữ) để nếu sau này bạn muốn thay đổi văn bản thay thế một lần nữa và đặt một cái gì đó theo cách thủ công – điều này có thể được thực hiện.

          Tương tự đối với chú thích hình ảnh:

          Lưu bản nháp tự động

          Lưu ý quan trọng:Các chú thích được thêm vào hình ảnh cũng được thêm động. Điều đó có nghĩa là Rank Math thêm chú thích vào hình ảnh trong khi tải trang, chứ không phải trước đó. Nói cách khác, nếu bạn kiểm tra hình ảnh của mình từ thư viện phương tiện WordPress, bạn sẽ không tìm thấy chú thích được thêm vào đó, nhưng bạn sẽ tìm thấy chúng trên các bài đăng, trang, v.v.

          Lưu bản nháp tự động

          Chỉ cần chọn định dạng phụ đề của bạn và để Rank Math thực hiện công việc nặng nhọc…

          Cách tối ưu hóa hình ảnh Văn bản thay thế (Thẻ thay thế) để SEO hình ảnh tốt hơn

          Thật dễ dàng bị treo và lãng phí rất nhiều thời gian để cân nhắc về văn bản thay thếhoàn hảocho mỗi hình ảnh trên trang web của bạn. Trong thực tế, văn bản thay thế chỉ cần:

          • Có liên quan, chính xác và viết cho khả năng tiếp cận của người dùng (và SEO)
          • Mang tính mô tả và cụ thể
          • Có liên quan

          Để tăng tốc quá trình này, bất cứ khi nào viết văn bản thay thế, chỉ cần nhìn vào một hình ảnh và mô tả những gì trong hình ảnh (tức làĐây là một hình ảnh / bức ảnh của…). Điều này sẽ tự động khuyến khích bạn viết thứ gì đó có liên quan và không đặc biệt theo hướng từ khóa trong khi khi có thể, các từ khóa phù hợp sẽ tự nhiên vẫn tạo thành một phần của văn bản thay thế cho tất cả các hình ảnh của bạn. Ngoại lệ đáng chú ý duy nhất đối với điều này là dành cho chụp ảnh sản phẩm và hình ảnh. Mặc dù không nhất thiết phải là thứ mà bạn thường sử dụng khi mô tả những gì trong hình ảnh – bao gồm cả số sê-ri sản phẩm / số nhận dạng duy nhất (nếu đó là thứ mà mọi người sẽ tìm kiếm để tìm sản phẩm) là hữu ích. Mặc dù điều này không dựa trên nguyên tắc công khai của Google – để củng cố mối quan hệ rõ ràng giữa các trang sản phẩm của bạn với hình ảnh và các tìm kiếm mà mọi người đang thực hiện dựa trên các tìm kiếm có liên quan cho một truy vấn:

          Lưu bản nháp tự động

          Vì vậy, hãy xem qua một số ví dụ về văn bản thay thế mà chúng tôi sẽ sử dụng cho một vài hình ảnh:

          Thêm chú thích vào hình ảnh trên trang web của bạn

          Mặc dù không hoàn toàn cần thiết khi nó không thêm vào hình ảnh hoặc hình ảnh của bạn chỉ nhằm mục đích trang trí – thêm chú thích trỏ đến nguồn gốc của hình ảnh (nếu đó không phải là của bạn), hoàn toàn là để ghi công hoặc để chỉ ra một cái gì đó cụ thể trong hình ảnh của bạn là hữu ích cho tìm kiếm và người đọc của bạn.

          Google đã chính thức tuyên bố rằng họ sử dụng chú thích cùng với tiêu đề hình ảnh, vì vậy nếu có thể, hãy đảm bảo rằng hình ảnh được đặt gần văn bản có liên quan và trên các trang có liên quan đến chủ đề được khuyến khích.Tuy nhiên, như một ví dụ, bạn sẽ nhận thấy rằng chúng tôi không sử dụng chú thích hình ảnh trong hầu hết nội dung của mình vì văn bản xung quanh mỗi hình ảnh chúng tôi chèn đã liên quan nhiều đến hình ảnh và tại sao nó lại có trong bài viết ngay từ đầu.

          3Giảm kích thước tệp hình ảnh của bạn để có thời gian tải nhanh hơn

          Google đã ghi lại kỹ lưỡng cách họ khuyên chủ sở hữu trang web tối ưu hóa hình ảnh của họ để họ có thể tiếp tục sử dụng mà không ảnh hưởng đến thời gian tải trang của họ.Điểm chính là việc tối ưu hóa, ngay cả khi phải hy sinh chất lượng, thường rất đáng giá vì tác động của nó đối với thời gian tải là rất đáng kể.

          Lưu bản nháp tự động

          Có một số công cụ mã nguồn mở / miễn phí để trợ giúp việc này, bao gồm:

          Khi nói đến phần mềm bạn cài đặt và chạy cục bộ trên máy tính của mình, lựa chọn của chúng tôi sẽ luôn là ImageOptim (mặc dù nó chỉ dành cho Mac, vì vậy nếu bạn là người dùng Linux hoặc Windows, đây là một sốlựa chọn thay thế). Nó cực kỳ đơn giản, bạn kéo và thả vào một hình ảnh và thế là xong.

          ImageOptim sẽ xử lý phần còn lại và tối ưu hóa tệp ở vị trí ban đầu.

          Lưu bản nháp tự động

          Nó cũng hỗ trợ tối ưu hóa hình ảnh GIF và có một khu vực cài đặt nơi bạn có thể tùy chỉnh mức độ cụ thể mà bạn muốn nén hình ảnh và ở mức độ nào.

          Một trong những cài đặt như vậy mà chúng tôi khuyên bạn nên thay đổi là cài đặt được bật theo mặc định sẽ loại bỏ dữ liệu EXIF ​​khỏi hình ảnh của bạn – vìGoogle đã tuyên bố rằng họ có thể sử dụng dữ liệu EXIF ​​làm yếu tố xếp hạng cho Google Hình ảnh.

          Lưu bản nháp tự động

          Nói như vậy nhưng về lâu dài việc làm thủ công này khá tốn thời gian. Ngay cả khi nó chỉ là một vài giây cho mỗi hình ảnh, trong một năm – bạn sẽ dành hàng giờ để tổ chức cục bộ hình ảnh và kéo chúng vào các công cụ này.

          Nói một cách đơn giản, khi bạn đã sẵn sàng tự động hóa toàn bộ quy trình – nếu bạn đã sử dụng hệ thống quản lý nội dung hàng đầu (WordPress) – thì có một số giải pháp thực sự chắc chắn.Đáng chú ý nhất làWP Smush,ShortPixel&Imagify.

          Các plugin này cũng giúp đảm bảo rằng trang web của bạn đang cung cấp hình ảnh được chia tỷ lệ (phản hồi), nghĩa là nếu bạn tải lên một hình ảnh có chiều rộng 1080px và ai đó xem nó trên thiết bị di động có chiều rộng rõ ràng là nhỏ hơn 1080px, thì nó sẽ không tải hình ảnh 1080px đầy đủ (đó là những gì sẽ xảy ra nếu không và lãng phí băng thông).Theo cách thủ công, điều này có thể đạt được bằng cách sử dụngsrcset

          Tạo Sơ đồ trang web Hình ảnh và Lập chỉ mục Hình ảnh của Bạn nhanh hơn

          Sơ đồ trang web giúp các công cụ tìm kiếm thu thập thông tin nội dung dễ dàng hơn.

          Vì vậy, như bạn có thể đã đoán – mộtsơ đồ trang web hình ảnhcho bạn cơ hội cung cấp cho Google thông tin bổ sung về hình ảnh cùng với URL hình ảnh cho những hình ảnh mà họ có thể không khám phá được.

          Đây là những thẻ mà bạn có thể sử dụng trong sơ đồ trang web hình ảnh:

          NhãnYêu cầuSự miêu tả
          <hình ảnh: hình ảnh>đúngEcnsloses tất cả thông tin về một trang duy nhất. Mỗithẻ <url>có thể chứa tối đa 1.000thẻ <image: image>.
          <hình ảnh: loc>đúngURL của hình ảnh. Trong một số trường hợp, URL hình ảnh có thể không nằm trên cùng một miền với trang web chính của bạn. Điều này hoàn toàn ổn miễn là cả hai miền đều được xác minh trong Google Search Console. Ví dụ: nếu bạn sử dụng mạng phân phối nội dung như Google Sites để lưu trữ hình ảnh của mình, hãy đảm bảo rằng trang web lưu trữ được xác minh trong GSC. Ngoài ra, hãy đảm bảo rằng tệp robots.txt của bạn không cho phép thu thập dữ liệu bất kỳ nội dung nào bạn muốn lập chỉ mục.
          <hình ảnh: caption>Không bắt buộcChú thích cho hình ảnh.
          <hình ảnh: geo_location>Không bắt buộcVị trí địa lý của hình ảnh. Ví dụ:<image: geo_location> Limerick, Ireland </ image: geo_location>
          <image: title>Không bắt buộcTiêu đề của hình ảnh.
          <hình ảnh: giấy phép>OptinalMột URL đến giấy phép của hình ảnh. Thay vào đó, bạn có thể sử dụng siêu dữ liệu hình ảnh, nếu muốn.

          Nếu bạn sử dụng WordPress với SEO Rank Math – hình ảnh sẽ được tự động thêm vào sơ đồ trang web của bạn, theocấu hình sơ đồ trang webcủa bạn .

          Để đủ điều kiện cho những điều này, chỉ cần:

          Mặc dù đây thực sự là bước khởi đầu và tất nhiên, chúng tôi không thể tính đến những hình ảnh nào bạn đang thực sự sử dụng trên trang web của mình – mặc dù chúng tôi có hai đề xuất rất đơn giản về mặt đó:

          1. Tránh những bức ảnh có chất lượng thấp bằng mọi giá.
          2. Đảm bảo rằng mọi hình ảnh đơn lẻ trên trang web của bạn thực sự đóng góp vào trải nghiệm của một con người đến trang web của bạn (tức là họ đã xem trang web của bạn ở đâu và họ đang cố lấy gì từ trang họ đang truy cập).

          Dịch vụ SMS GATEWAY

          Sms Gateway
          Nội dung

            Đây là giải pháp giúp bạn gửi thông báo bằng tin nhắn SMS cho khách hàng hoặc người quản lý mỗi khi có đơn hàng mới hoặc thay đổi trạng thái đơn hàng không chỉ gửi tin khi khách hàng gửi tin trên web.

            Điểm đặc biệt ở đây là hệ thống tận dụng sim và điện thoại của bạn để tạo thành một tổng đài gửi SMS chuyên nghiệp. Do đó bạn không phải thuê dịch vụ gửi SMS và cũng bỏ qua sự phiền hà khi phải đăng kí mẫu tin trước khi gửi. Thêm nữa, tốc độ gửi tin nhắn gần như tức thì giúp bạn không bỏ lỡ bất kì khách hàng nào.

            Đăng ký tư vấn
            All SMS Gateway – Send Bulk SMS through HTTP-SMPP Protocol & Android Phone by Turning into Gateway
            Sms Gateway

            Trải nghiệm SMS Gateway

            Vui lòng điền đẩy đủ thông tin vào form bên cạnh để bắt đầu. Một email chứa link tải và thông tin plugin sẽ được gửi tới bạn sau 1-3 phút. Đồng thời bạn cũng sẽ nhận được 1 tài khoản đăng nhập quản lý SMS để kết nối app trên điện thoại.

            Hãy trải nghiệm và để lại suy nghĩ hoặc góp ý của bạn tại đây nhé!

            Lỗi: Không tìm thấy biểu mẫu liên hệ.

            Các bước thực thi

            • SIM điện thoại còn hoạt động bình thường, có thể gửi tin nhắn đi được và phải còn tiền trong tài khoản.
            • Điện thoại chạy hệ điều hành Android (iPhone không được). Phải luôn có kết nối mạng 3G, 4G hoặc Wifi.

            Bước 1: Truy cập https://sms.wpvn.xyz/api.php để tạo tài khoản quản lý API.
            Bước 2: Bạn lắp SIM vào điện thoại, tải App về và cài lên điện thoại Android. Sau đó mở app lên đăng nhập với thông tin đã được cung cấp qua email.
            Bước 3: Truy cập https://sms.wpvn.xyz/api.php để cấu hình số điện thoại và lấy API cho web.
            Bước 4: Cài plugin SMS Gateway lên website của bạn. Sau đó vào mục cài đặt plugin để nhập thông tin API đã lấy ở bước 3.

            Tham khảo tài liệu tại: doc.ntechpark.com/all-sms-gateway/

            Giải thích canonical trong wp

            Lưu bản nháp tự động
            Nội dung

              Phần tử liên kếtrel = ”canonical” – thường được gọi là URL chuẩn – cực kỳ quan trọng nhưng vẫn thường xuyên mắc phải các quan niệm sai lầm phổ biến và được sử dụng không chính xác ngay cả những SEO dày dạn kinh nghiệm trong ngành.

              Đặt Canonical URLs cho các bài đăng và trang WordPress

              Theo mặc định, Rank Math sử dụng URL của bài đăng / trang hiện tại làm URL chuẩn, vì vậy bạn chỉ cần thay đổi cài đặt này nếu bạn muốn thay đổi nó thành một cái gì đó khác.

              Lưu bản nháp tự động

              Đây còn được gọi làquy tắc tự tham chiếu, mà chúng tôi sẽ đề cập sau cùng với tất cả các trường hợp khác trong đó quy tắc chuẩn hóa có lợi.

              Đặt URL chuẩn theo cách thủ công (Nâng cao)

              Nếu trang web của bạn hiện không tận dụng được hệ thống quản lý nội dung WordPress hiện hỗ trợ hơn 40% tất cả các trang web trên internet, bao gồm các trang web như CNN, Bloomberg, v.v. – đây là cách bạn có thể đặt URL chuẩn cho các trang trên trang web của mình theo cách thủ công …

              Vì vậy, như đã đề cập trước đó – một URL chuẩn được đặt đơn giản bằng cách sử dụng thuộc tính liên kết HTML rel = ”canonical”. Do đó, để đặt một mã trên bất kỳ trang nào của trang web, chỉ cần thêm mã sau vào phần <head> </head> của mã nguồn HTML của trang web:

              <link rel = "canonical" href = "https://rankmath.com/about/">

              Và sau đó, chỉ cần thay thếhttps://rankmath.com/about/bằng URL mà bạn muốn đặt làm URL chuẩn cho trang mà bạn đã thêm mã ở trên vào.

              5Khi nào bạn nên sử dụng URL hợp quy?

              5.1Chuyển hướng 301 so với Sử dụng rel = canonical

              Bạn không chắc liệu việc triển khai chuyển hướng hoặc sử dụng chuẩn hóa sẽ có ý nghĩa hơn hay không? Cách dễ nhất để đặt nó là:

              Nếu có thể sử dụng chuyển hướng để khắc phục sự cố, hãysử dụng chuyển hướng. Tuy nhiên, hãysử dụng URL chuẩn nếu bạn vẫn muốn cả hai phiên bản của trang đều có thể truy cập được(chỉ là không có trong kết quả tìm kiếm) và đơn giản là bạn sẽ không thể sử dụng chuyển hướng để thực hiện điều đó. Nói cách khác, nếu một trang web giống hệt hoặc gần trùng lặp và không phục vụ mục đích nào khác trong việc truy cập internet (tức là người dùng trang web của bạn hoặc các công cụ tìm kiếm), thì chỉ cần chuyển hướng nó đến bất kỳ trang nào bạn coi là ưu tiên.

              Và khi điều này là không thể vì cả hai trang vẫn phục vụ mục đích hợp lệ và có giá trị là có thể truy cập được, thì hãy sử dụng URL chuẩn để chỉ định trang nào trong số các trang có liên quan mà bạn muốn công cụ tìm kiếm coi là trang gốc / trang chính.

              5.2Các trang có cần URL chuẩn tự tham chiếu không?

              Trong hình ảnh của Hộp Meta SEO Rank Math xuất hiện trước đó trong bài đăng này, chúng tôi không liên kết trang khác bằng cách chèn URL nhưng URL chuẩn được đặt thành chính trang hiện tại.

              Chúng tôi đặc biệt khuyên bạn nên có các phần tử liên kết rel = canonical trên tất cả các trang chủ yếu bởi vì điều này đã được áp dụng như một phương pháp hay nhất kể từ khi Google xác nhận rằng đây làcách tốt nhất để giải quyết vấn đề này.

              Tác dụng phụ tiềm ẩn của việc không có các URL chuẩn tự tham chiếu trên các trang trỏ đến phiên bản thuần túy của URL là dẫn đến lỗi nội dung trùng lặp. Đó là lý do tại sao việc thêm trang chuẩntự tham chiếuvào URL là một phương pháp hay – và bạn sẽ rất vui khi biết rằngplugin Rank Math SEOđã thực hiện điều này nên bạn không phải lo lắng về nó.

              Hầu hết mọi người đều cho rằng trang web của họ không có bất kỳ nội dung trùng lặp nào bởi vì họrõ ràngđã không cố ý xuất bản cùng một phần nội dung. Điều đó đang được nói, điều đó không nhất thiết đúng bởi vì các công cụ tìm kiếm thu thập dữ liệu các URL riêng lẻ, không phải các trang trên trang web của bạn.

              Có, điều này thực sự có nghĩa là họ sẽ thấy rankmath.com/blog/seo-audit và rankmath.com/blog/seo-audit? Id = 123là các trang duy nhất mặc dù là cùng một trang thực tế với nội dung rất giống nhau hoặc hoàn toàn giống nhau .

              https://rankmath.com/blog/seo-audit/
              https://rankmath.com/blog/seo-audit/?utm_source=active%20users&utm_medium=email
              http://rankmath.com/wordpress/seo-plugin/?utm_medium=twitter

              Các URL có chuỗi truy vấn như được hiển thị ở trên được gọi làURL được tham số hóavà có thể gây ra các vấn đề về nội dung trùng lặp trên các trang web – đặc biệt là nhữngURLcho phép lọc, chẳng hạn như các trang web Thương mại điện tử.

              Và đây là lý do tại saocác quy chuẩn tự tham chiếu lại vô cùng hữu ích. Mọi người có thể thường liên kết đến các URL có truy vấn và thông số UTM – có nghĩa là khi điều đó xảy ra, Google có thể bắt đầu chọn URL có thông số làm phiên bản chuẩn. Do đó, việc tận dụng các trang chuẩn tự tham chiếu giúp tránh tình trạng này bằng cách chỉ định rõ ràng URL nào bạn coi là phiên bản chính hoặc quan trọng nhất của trang đó.

              5.3URL chuẩn tên miền chéo

              Trong trường hợp bạn có cùng một phần nội dung trên nhiều miền, bạn cũng có thể sử dụng chuẩn hóa. Một ví dụ tuyệt vời về điều này là một số trang web cóp nhặt và chia sẻ lại nội dung từ các trang web không phải của trang web đó – có thể quản lý các bài viết trong một niche cụ thể. Nếu một URL chính tắc được đặt thành nguồn gốc của nội dung (nơi nó được xuất bản lần đầu tiên) thì bất kỳ liên kết nào trỏ đến phiên bản thứ hai sẽ được tính vào của phiên bản chuẩn gốc – tăng cơ hội xếp hạng của nội dung gốc.

              5.4Hợp chuẩn hóa cho các trang AMP

              Tài liệu HTMLAMPtheo yêu cầu để đặt URL chuẩn trên tất cả các trang AMP tham chiếu đến trang AMP tương đương (hoặc tự tham chiếu trang AMP nếu không có URL tương đương). Thẻ chuẩn là một phần tử HTML bắt buộc để nội dung AMP được coi làhợp lệvà trong những trường hợp có thể, thẻ chuẩn phải trỏ đến phiên bảnkhông phải AMPban đầu của nội dung.

              Lưu ý:Trong các trường hợp như vậy, phiên bản gốc không phải AMP của nội dung được sử dụng làm URL chuẩn trong trang AMP tương đương không thể tự không lập chỉ mục được (bằng bất kỳ phương pháp nào, bao gồm chuyển hướng 301, một URL chuẩn khác, v.v. .)

              Điều này là do điều này sẽ gửi các thông báo xung đột đến các công cụ tìm kiếm – khiến khả năng cao là trang AMP sẽ không hiển thị trong kết quả tìm kiếm.

              TL; DR – Thẻchuẩnlà yếu tố bắt buộc đểcác trang AMPđược coi là hợp lệ và thẻchuẩnphải quay lại phiên bản ‘không phảiAMP‘ ban đầu củatrang. NếutrangAMPđộc lập thì trangchuẩnphải tự tham chiếu.

              5.5Các phiên bản trang web khác nhau cho các thiết bị khác nhau

              Lưu bản nháp tự động

              Nếu bạn gặp trường hợp với một trang web có các trang dành cho máy tính để bàn và trang di động riêng biệt – nghĩa là hai phiên bản của trang web, chẳng hạn như một phiên bản tại rankmath.com và một phiên bản dành cho thiết bị di động tại m.rankmath.com – bạn nên sử dụng các URL chuẩn vàrel = alternateđể chỉ ra sự giống nhau / mối quan hệ giữa hai trang này.

              Lưu ý:Google là công cụ tìm kiếm duy nhất chính thức hỗ trợ việc triển khai này tại thời điểm này.

              Trên thực tế, đây là giao diện của điều này trên cả phiên bản Máy tính để bàn và Di động của một trang web:

              Máy tính để bàn

              Trên phiên bản dành cho máy tính để bàn của trang, URL chuẩn và URL thay thế trong<head>phần này trông như sau:

              <head>
              <link rel="canonical" href="https://rankmath.com/" />
              <link rel="alternate" href="https://m.rankmath.com/" />
              </head>

              Mobile

              Khi ở trên phiên bản dành cho thiết bị di động của trang, URL chuẩn trong<head>phần sẽ xuất hiện như sau:

              <head>
              <link rel="canonical" href="https://rankmath.com/" />
              </head>

              Bằng cách đó, các công cụ tìm kiếm sẽ dễ dàng hiểu được phiên bản nào của trang sẽ hiển thị cho thiết bị di động và phiên bản nào sẽ hiển thị cho người tìm kiếm trên Máy tính để bàn.

              6Những lầm tưởng và quan niệm sai lầm về URL chuẩn phổ biến

              Mặc dù đã xuất hiện được một thời gian, nhưng quá trình chuẩn hóa rất khó hiểu và rất dễ dẫn đến sai sót.

              Dưới đây là một số ví dụ về các sự cố phổ biến mà bạn có thể gặp phải khi sử dụng chuẩn hóa trên trang web của mình:

              6.1Sử dụng không đúng cách Canonicalization trên các trang web đa ngôn ngữ

              Lưu bản nháp tự động

              Các trang web đa ngôn ngữ thường sử dụng thẻ Hreflang để lưu trữ và hiển thị các phiên bản khác nhau của trang web dựa trên vị trí địa lý của người dùng.

              Đồng thời đặt URL được chuẩn hóa thành ‘Noindex’

              Việc sử dụng chuẩn hóa và không lập chỉ mục sẽ không có ý nghĩa.Chỉ không lập chỉ mục một trang không cho Google biết bạn muốn kết hợp trang nào với một trang khác và các tín hiệu xếp hạng sẽ được chuyển tiếp đến một trangchính đãnói .

              Khi Google nhìn thấy hai URL từ trang web của bạn, chúng trông giống nhau và bạn cho chúng tôi biết tùy chọn của mình một cách rõ ràng, chúng tôi sẽ cố gắng kết hợp chúng và coi chúng là một URL (thường là mạnh hơn) thay vì những URL riêng biệt. Chuyển hướng, rel = canonical, liên kết nội bộ và bên ngoài, sơ đồ trang web, hreflang, v.v. tất cả đều cho chúng tôi biết tùy chọn của bạn và bạn càng có thể căn chỉnh chúng, chúng tôi càng theo dõi chúng và sử dụng chúng để chọn một trang chuẩn từ tập hợp đó ( và chuyển tiếp tất cả các tín hiệu đến trang chuẩn đã chọn).

              Mặt khác, noindex (một mình) và không cho phép robots.txt (nói chung) không phải là dấu hiệu rõ ràng để chuẩn hóa. Việc chỉ có ngăn lập chỉ mục trên một trang không cho chúng tôi biết rằng bạn muốn kết hợp nó với thứ gì đó khác và các tín hiệu đó phải được chuyển tiếp. Việc không cho phép robots.txt thậm chí còn phức tạp hơn, chúng tôi thậm chí không biết liệu trang có khớp với bất kỳ trang nào khác trên trang web của bạn hay không, vì vậy chúng tôi thậm chí không thể sử dụng nó để chuẩn hóa nếu chúng tôi muốn.

              John Mueller,Nhà phân tích xu hướng quản trị trang webJohn Mueller

              Nói một cách đơn giản, bạn có thể nói rằngrel = canonicalthực hiện những gì chuyển hướng 301 làm; gán bất kỳ liên kết nào đến phiên bản không chuẩn cho phiên bản chuẩn nhưng không có chuyển hướng (vì bạn muốn có thể duy trì quyền truy cập vào cả hai trang).

              URL hợp quy dành cho các tình huống mà bạn không thể (và không nên) triển khai chuyển hướng 301.

              Tương tự, đừng làm những việc như chuẩn hóa trang A -> trang B và sau đó chuyển hướng trang B -> trang A hoặc chuỗi các thẻ chuẩn, chẳng hạn như trỏ trang A -> B, trang B -> C, v.v.). Gửi các tín hiệu rõ ràng là rất quan trọng vì bạn thường khiến các công cụ tìm kiếm đưa ra các quyết định tồi.

              Nếu bạn đã từng cân nhắc cả việc chuẩn hóa URL và không lập chỉ mục URL đó, bạn nên cân nhắc sử dụng chuyển hướng 301. Và nếu bạn không thể sử dụng chuyển hướng thì bạnchỉnên sử dụng rel = canonical.

              6.4Chỉ cho biết một phiên bản trang web ưa thích trong Google Search Console

              Một tùy chọn để đặt URL chính tắc là sử dụng Google Search Console để chỉ địnhmiềnchính tắcưa thích của bạn . Có một số lý do mà phương pháp này có lợi bao gồm nó nhanh chóng và cực kỳ dễ thực hiện.

              Tuy nhiên, cũng có một số vấn đề đã biết liên quan đến việc sử dụng phương pháp này. Ví dụ: nó sẽ được sử dụng để chỉ định một miền ưa thích nhưng bạn vẫn cần một plugin như Rank Math để dễ dàng chỉ định các URL chuẩn cho các bài đăng và trang cụ thể trên cơ sở cá nhân khi gặp các tình huống khác nhau.

              Và tất nhiên, một nhược điểm khác của phương pháp này là việc chỉ định miền ưa thích trong Google Search Console chỉ đặt đúng biến thể chuẩn cho Google, nhưng không làm như vậy cho các công cụ tìm kiếm khác.

              6.5Các URL chuẩn có được coi là chỉ thị cho các công cụ tìm kiếm không?

              Tuy nhiên,URL hợp quykhông được coi là chỉ thị, chúng được coi là tín hiệu của công cụ tìm kiếm.Điều này có nghĩa là chúng quan trọng và nên được sử dụng vì chúng giúp các công cụ tìm kiếm hiểu nội dung của trang web và cách nó liên quan đến nội dung khác trên trang web của bạn

              6.6Bạn có nên chuẩn hóa trang đầu tiên của một loạt bài được phân trang không?

              Không, đây là một quan niệm sai lầm rất phổ biến. Mỗi trang trong một chuỗi các trang được phân trang phải có URL chuẩn tự tham chiếu riêng. Nếu bạn đã thực hiện điều này trên trang web của mình hoặc đang làm như vậy – có khả năng Google sẽ chỉ nhận ra điều đó và bỏ qua tín hiệu (vì nó không phải là chỉ thị).

              6.7Bạn có thể đặt URL chuẩn làm URL tương đối không?

              Mặc dù thẻ liên kết chấp nhận URL tương đối, vì vậy nó thực sự được coi là HTML hợp lệ – việc sử dụng URL tương đối trong trang chuẩn có thể dẫn đến các vấn đề khác, bao gồm cả URL cơ sở được định cấu hình không chính xác, dẫn đến toàn bộ thiết lập trang chuẩn không hợp lệ.

              Trên thực tế, bản thân Google đã nêu một số vấn đề phổ biến nhất mà họ thấy với các trang chuẩn thực sự xuất phát từ việc sử dụng các URL tương đối.

              Tóm lại, vì mục đích của URL chuẩn là chỉ rõ chính xác URL nào là tùy chọn (với độ chính xác, không mơ hồ) nên điều này thực sự đạt được tốt nhất bằng cách sử dụng URL tuyệt đối khi đặt URL chuẩn trên trang web của bạn.

              Các trang web đa ngôn ngữ thường sử dụng thẻ Hreflang để lưu trữ và hiển thị các phiên bản khác nhau của trang web dựa trên vị trí địa lý của người dùng.

              Khi sử dụngthẻ hreflang,bạn nên chỉ định một trang chuẩn bằng cùng một ngôn ngữ hoặc ngôn ngữ thay thế tốt nhất có thể nếu một trang chuẩn không tồn tại cho cùng một ngôn ngữ.

              Điều đó đang được nói, nếu bạn chọn không chỉ ra một URL chuẩn, Google sẽ xác định những gì họnghĩlà phiên bản hoặc URL tốt nhất.

              Nếu bạn sử dụng WordPress làm hệ thống quản lý nội dung mà bạn lựa chọn (mà chúng tôi rất khuyên bạn nên sử dụng) và cung cấp nội dung cho khách truy cập trang web bằng nhiều ngôn ngữ, chúng tôi thực sự khuyên bạn nên sử dụng plugin dịchWeglotcho trang web của mình.

              Chúng tôi đã xác minh một cách độc lập rằng họ có xử lý quá trình chuẩn hóa như Google đã phác thảo và đề xuất.

              7Kết luận – Sử dụng đúng các URL hợp quy là quan trọng

              Và, đó là nó! Chúng tôi hy vọng chúng tôi có thể giải quyết hoàn toànmọi câu hỏi mà bạn từng có về URL chuẩnvà cách sử dụng chúng trong các tình huống bạn gặp phải và với các trang web bạn điều hành.

              Một trong những lý do chúng tôi thực sự xây dựng Rank Math là để loại bỏ công việc lặp đi lặp lại trong SEO như thế này.Đặt các URL chuẩn tùy chỉnh (chưa nói đến việc tự động đặt các URL chuẩn tự tham chiếu theo mặc định) – tất cả đều nhờ vào Rank Math & WordPress không thể dễ dàng hơn.