Chào các bạn, thông thường khi bạn thiết kế một giao diện cho website bán hàng, tối thiểu bạn phải có hai trang là trang Ajax và trang Checkout để hoạt động. Nếu khách hàng biết thì không sao, hoặc các bạn hỗ trợ cài đặt thì chẳng vấn đề gì xảy ra cả. nhưng nếu bạn chia sẻ hàng loạt trên Internet hoặc bạn không thể tự cấu hình cho từng khách hàng một thì sao?
Tôi có một giải pháp để giải quyết vấn đề đó. Chúng ta sẽ cho WordPress tự động tạo ra các trang đó với nội dung có sẵn để khách hàng không cần phải tạo, cũng là để giao diện chạy ổn định hơn.
Đầu tiên bạn mở file functions.php trong thư mục theme bạn đang sử dụng (http://ten-mien/wp-content/themes/ten-giaodien/functions.php) chèn thêm đoạn code sau:
if ( is_admin() && isset($_GET['activated'] ) && $pagenow == 'themes.php' ) { if( ! get_page_by_title( 'ajax' ) ) { tapchicntt_create_pages_auto('Ajax', 'Nội Dung Page'); } if( ! get_page_by_title( 'checkout' ) ) { tapchicntt_create_pages_auto('Checkout', 'Nội Dung Page'); } } function tapchicntt_create_pages_auto($pageName, $content) { $createPage = array( 'post_title' => $pageName, 'post_content' => $content, 'post_status' => 'publish', 'post_type' => 'page', 'post_name' => sanitize_title($pageName) ); // Insert the post into the database wp_insert_post( $createPage ); }
Trong đoạn code trên, WordPress sẽ kiểm tra nếu WordPress đang active giao diện của bạn, thì kiểm tra tiếp xem các trang có tồn tại hay chưa bằng hàm get_page_by_title(). Nếu các trang đó không tồn tại mới tạo.
Trong trang mình tạo sẽ có nội dung gì cũng được, và thông thường chúng ta tạo các file page-{name}.php trong gói giao diện để thực hiện, chỉ cần nó tồn tại.
Chúc các bạn thành công!