Wordpress

Thêm Menu vào trang quản trị Admin của WordPress

Để thêm một Menu vào trang quản trị Admin của WordPress các bạn thêm một action admin_menu như sau: // Admin Menu add_action(‘admin_menu’, function (){ // Register Coupon Manager Page add_menu_page( __( ‘Coupon Manager’, ‘coupon-manager’ ), ‘Coupon Manager’, ‘manage_options’, ‘admin.php?page=coupon-manager’, ‘couponManagerPage’, ‘src/icon.png’, 6 ); }); // Function function couponManagerPage(){ echo “Coupon Page Manager”; } Trong […]

Nhúng file JS vào trang quản trị Admin trên WordPress

Để nhúng file js (javascript, jquery) vào trang quản trị admin của WordPress, chúng ta thêm một action vào admin_enqueue_scripts như sau: Trong file functions.php ở thêm wordpress, hoặc bất cứ file nào mà code có thể chạy được qua, chúng ta thêm đoạn code sau: add_action(‘admin_enqueue_scripts’, function (){ wp_enqueue_script(‘custom_admin_script’, plugin_dir_url(__FILE__) . ‘/js/custom-admin-script.js’); }); Nó […]

Phòng tránh SQL Injection khi sử dụng $wpdb trong WordPress

Phương pháp sử dụng SQL Injection là sử dụng đoạn mã SQL không cho phép để khai thác các thông tin trái phép trong CSDL. WordPress cũng không phải là ngoại lệ vì nó sử dụng MySQL làm CSDL. Vậy để phòng tránh SQL Injection trong WordPress chúng ta phải làm thế nào? Ở đây […]

Fix lỗi “#1067 – Invalid default value for ‘post_date'” trên WordPress

Khi các bạn can thiệp chỉnh sửa trên bảng CSDL của WordPress. WordPress chạy MySQL Server, mình gặp 1 lỗi khi thực hiện câu lệnh Alter đó là: Error Code: 1067. Invalid default value for ‘post_date’ Nguyên nhân là do sql_mode của MySQL Server đang được thiết lập là: ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION Bạn có thể kiểm tra […]

Hướng dẫn tạo một WordPress Plugin chi tiết nhất

WordPress ngoài phần core ra thì có 2 thành phần rất quan trọng đó là Theme và Plugin. Hai thành phần này giúp developer xây dựng hoàn chỉnh một Website WordPress. Bài viết này chúng ta sẽ được giới thiệu, xây dựng một plugin cho WordPress. WordPress Plugin là gì? WordPress Plugin là một gói […]

Vô hiệu hóa RSS Feed trên WordPress

Hôm nay vô tình vào xem Google Search Console, mình bắt gặp website mình đã bị kẻ xấu lợi dụng chức năng search và RSS Feed trên WordPress để index những link xấu. Vì vậy mình đã quyết định disable RSS Feed trên WordPress để giải quyết vấn đề này. Có 2 cách thực hiện […]

Tạo Custom Field Upload Media trên WordPress

Bài viết sau mình sẽ hướng dẫn các bạn tạo 1 custom field trong WordPress có button upload media để upload ảnh: Bước 1: Đầu tiên chúng ta tạo ra 1 metabox có giao diện như bên trên: <?php function vinasupport_custom_meta_boxes( $post_type, $post ) { add_meta_box( ‘vinasupport-meta-box’, __( ‘Custom Image’ ), ‘render_vinasupport_meta_box’, array(‘post’, ‘page’), //post […]

Hướng dẫn disable Widget Block Editor trên WordPress

Kể từ WordPress 5.8, chức năng quản lý Widget trên WordPress đã thay đổi giao diện. Nó có tên mới là Block Widget, có nhiều tính năng mới hơn. Tuy nhiên, nếu bạn chưa dùng quen, hoặc thích sử dụng giao diện quản lý Widget cũ thì bạn có thể sử dụng 2 cách sau. […]

Thêm định dạng upload file cho WordPress

Càng ngày càng có thêm nhiều định dạng mới cho Website. Mình lấy vị dụ như hiện nay các website đang dần hỗ trợ định dạng ảnh webp do Google phát triển. Webp là định dạng ảnh mới được phát triển với mục địch giảm dung lượng ảnh mà không ảnh hưởng tới chất lượng. […]

Vô hiệu hóa XML-RPC trên WordPress

Mấy hôm trước, đột nhiên website của mình chậm đi rất nhiều! Kiểm tra access log của Nginx thấy rất nhiều request tới file xmlrpc.php của Blog. Qua tìm hiểu trên internet, mình được biết đây là 1 kiểu tấn công nhằm vào Website / Blog WordPress nhằm đánh cắp thông tin tài khoản đăng nhập. Vì […]