Singleton là một phương pháp lập trình trong đó đảm bảo việc khởi tạo đối tượng từ một class cho trước chỉ diễn ra một lần duy nhất trong toàn bộ quá trình chạy ứng dụng. Do phương pháp lập trình Singleton khá phổ biến nên nó còn được coi như một kiểu mẫu trong lập trình hay còn gọi với thuật ngữ tiếng Anh là Singleton Pattern.
class HOCWP_Theme_Custom { protected static $instance; public static function get_instance() { if ( ! ( self::$instance instanceof self ) ) { self::$instance = new self(); } return self::$instance; } public function __construct() { if ( self::$instance instanceof self ) { return; } } } function HT_Custom() { return HOCWP_Theme_Custom::get_instance(); }
Áp dụng Singleton vào lập trình WordPress rất có lợi. Bạn sẽ kiểm soát được giao diện hoặc plugin chạy code nhiều lần. Đối với các lớp (class) không có tính kế thừa thì bạn nên dùng theo kiểu Singleton này để đối tượng chỉ được khởi tạo 1 lần mà thôi.
Tất cả các hàm bạn đều khai báo vào lớp HocWP_Theme_Custom như trong ví dụ bên trên. Muốn gọi hàm nào thì bạn chỉ cần gọi hàm HT_Custom()->ten_ham() là được. Chúc bạn thành công.