Như các bạn đã biết, URL có ảnh hưởng rất lớn và rất quan trọng trong SEO. Việc làm đẹp URL cho trang web của bạn sẽ giúp các SE đánh giá cao trang web hơn từ đó tối ưu hoá công cụ tìm kiếm! Làm đẹp URL thực chất là việc viết lại URL. Nếu bạn đang sử dụng hosting có thể sử dụng file .htaccess, còn trên Xtgem ta phải dùng code để làm điều đó. Có thể bạn đã biết, URL bài viết của blog Xtgem khi tiêu đề bằng tiếng việt sẽ rất xấu. Tuy nhiên ta có thể cải thiện điều đó, trên URL của blog dạng domain/__xtblog_entry/id-ten-bai-viet thì id là thứ quan trọng nhất còn tên bài viết phía sau ta có thể tùy chỉnh. Hôm nay mình sẽ chia sẻ cho các bạn function rewrite URL bằng TWIG viết lại URL tuyệt đẹp, không lỗi tiếng việt, loại bỏ các kí tự đặc biệt khỏi URL! tạo slug cho SEO friendly bằng twig
{% macro rwurl(url) %}
{# function rewrite url bởi Luc00 #}
{% set url = url|lower|replace({'á':'a','à':'a','ả':'a','ã':'a','ạ':'a','ă':'a','ắ':'a','ằ':'a','ẳ':'a','ẵ':'a','ặ':'a','â':'a','ấ':'a','ầ':'a','ẩ':'a','ẫ':'a','ậ':'a','æ':'a','ä':'a','đ':'d','ð':'d','é':'e','è':'e','ẻ':'e','ẽ':'e','ẹ':'e','ê':'e','ế':'e','ề':'e','ể':'e','ễ':'e','ệ':'e','í':'i','ì':'i','ỉ':'i','ĩ':'i','ị':'i','ï':'i','î':'i','ó':'o','ò':'o','ỏ':'o','õ':'o','ọ':'o','ô':'o','ố':'o','ồ':'o','ổ':'o','ỗ':'o','ộ':'o','ơ':'o','ớ':'o','ờ':'o','ở':'o','ỡ':'o','ợ':'o','ö':'o','ø':'o','ú':'u','ù':'u','ủ':'u','ũ':'u','ụ':'u','ư':'u','ứ':'u','ừ':'u','ử':'u','ữ':'u','ự':'u','ü':'u','û':'u','ý':'y','ỳ':'y','ỷ':'y','ỵ':'y','ỹ':'y'}) %}
{% set url = url|url_encode|replace0 %}
{% if '%' in url %}
{% for pt in url|split' %}
{% if pt matches '/^[A-Z0-9][A-Z0-9]/' %}
{% set cut = '%'~pt[:2] %}
{% set url = url|replace({(cut):'-'}) %}
{% endif %}
{% endfor %}
{% endif %}
{% set url = url|replace0|trim0 %}
{{url}}
{% endmacro %}
{% import 'function.twig' as func %}
{{func.rwurl(var)}}
{{_self.rwurl(var)}}
{{func.rwurl('Bài viết mới!')}}