header and footer, add PHP code snippets with conditional logic, insert ads pixel, custom content, and more.
* License: GPLv2 or later
*
* Text Domain: insert-headers-and-footers
* Domain Path: /languages
*
* @package WPCode
*/
/*
Copyright 2019 WPBeginner
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License, version 2, as
published by the Free Software Foundation.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
*/
if ( ! defined( 'ABSPATH' ) ) {
exit;
}
// Don't allow multiple versions to be active.
if ( function_exists( 'WPCode' ) ) {
if ( ! function_exists( 'wpcode_pro_just_activated' ) ) {
/**
* When we activate a Pro version, we need to do additional operations:
* 1) deactivate a Lite version;
* 2) register option which help to run all activation process for Pro version (custom tables creation, etc.).
*/
function wpcode_pro_just_activated() {
wpcode_deactivate();
add_option( 'wpcode_install', 1 );
}
}
add_action( 'activate_wpcode-premium/wpcode.php', 'wpcode_pro_just_activated' );
if ( ! function_exists( 'wpcode_lite_just_activated' ) ) {
/**
* Store temporarily that the Lite version of the plugin was activated.
* This is needed because WP does a redirect after activation and
* we need to preserve this state to know whether user activated Lite or not.
*/
function wpcode_lite_just_activated() {
set_transient( 'wpcode_lite_just_activated', true );
}
}
add_action( 'activate_insert-headers-and-footers/ihaf.php', 'wpcode_lite_just_activated' );
if ( ! function_exists( 'wpcode_lite_just_deactivated' ) ) {
/**
* Store temporarily that Lite plugin was deactivated.
* Convert temporary "activated" value to a global variable,
* so it is available through the request. Remove from the storage.
*/
function wpcode_lite_just_deactivated() {
global $wpcode_lite_just_activated, $wpcode_lite_just_deactivated;
$wpcode_lite_just_activated = (bool) get_transient( 'wpcode_lite_just_activated' );
$wpcode_lite_just_deactivated = true;
delete_transient( 'wpcode_lite_just_activated' );
}
}
add_action( 'deactivate_insert-headers-and-footers/ihaf.php', 'wpcode_lite_just_deactivated' );
if ( ! function_exists( 'wpcode_deactivate' ) ) {
/**
* Deactivate Lite if WPCode already activated.
*/
function wpcode_deactivate() {
$plugin = 'insert-headers-and-footers/ihaf.php';
deactivate_plugins( $plugin );
do_action( 'wpcode_plugin_deactivated', $plugin );
}
}
add_action( 'admin_init', 'wpcode_deactivate' );
if ( ! function_exists( 'wpcode_lite_notice' ) ) {
/**
* Display the notice after deactivation when Pro is still active
* and user wanted to activate the Lite version of the plugin.
*/
function wpcode_lite_notice() {
global $wpcode_lite_just_activated, $wpcode_lite_just_deactivated;
if (
empty( $wpcode_lite_just_activated ) ||
empty( $wpcode_lite_just_deactivated )
) {
return;
}
// Currently tried to activate Lite with Pro still active, so display the message.
printf(
'
%1$s
%2$s
',
esc_html__( 'Heads up!', 'insert-headers-and-footers' ),
esc_html__( 'Your site already has WPCode Pro activated. If you want to switch to WPCode Lite, please first go to Plugins → Installed Plugins and deactivate WPCode. Then, you can activate WPCode Lite.', 'insert-headers-and-footers' )
);
if ( isset( $_GET['activate'] ) ) { // phpcs:ignore WordPress.Security.NonceVerification.Recommended
unset( $_GET['activate'] ); // phpcs:ignore WordPress.Security.NonceVerification.Recommended
}
unset( $wpcode_lite_just_activated, $wpcode_lite_just_deactivated );
}
}
add_action( 'admin_notices', 'wpcode_lite_notice' );
// Do not process the plugin code further.
return;
}
/**
* Main WPCode Class
*/
class WPCode {
/**
* Holds the instance of the plugin.
*
* @since 2.0.0
*
* @var WPCode The one true WPCode
*/
private static $instance;
/**
* Plugin version.
*
* @since 2.0.0
*
* @var string
*/
public $version = '';
/**
* The auto-insert instance.
*
* @var WPCode_Auto_Insert
*/
public $auto_insert;
/**
* The snippet execution instance.
*
* @var WPCode_Snippet_Execute
*/
public $execute;
/**
* The error handling instance.
*
* @var WPCode_Error
*/
public $error;
/**
* The conditional logic instance.
*
* @var WPCode_Conditional_Logic
*/
public $conditional_logic;
/**
* The conditional logic instance.
*
* @var WPCode_Snippet_Cache
*/
public $cache;
/**
* The snippet library.
*
* @var WPCode_Library
*/
public $library;
/**
* The Snippet Generator.
*
* @var WPCode_Generator
*/
public $generator;
/**
* The plugin settings.
*
* @var WPCode_Settings
*/
public $settings;
/**
* The plugin importers.
*
* @var WPCode_Importers
*/
public $importers;
/**
* The file cache class.
*
* @var WPCode_File_Cache
*/
public $file_cache;
/**
* The notifications instance (admin-only).
*
* @var WPCode_Notifications
*/
public $notifications;
/**
* The admin page loader.
*
* @var WPCode_Admin_Page_Loader
*/
public $admin_page_loader;
/**
* The library auth instance.
*
* @var WPCode_Library_Auth
*/
public $library_auth;
/**
* The admin notices instance.
*
* @var WPCode_Notice
*/
public $notice;
/**
* Instance for logging errors.
*
* @var WPCode_File_Logger
*/
public $logger;
/**
* Load the smart tags.
*
* @var WPCode_Smart_Tags
*/
public $smart_tags;
/**
* Main instance of WPCode.
*
* @return WPCode
* @since 2.0.0
*/
public static function instance() {
if ( ! isset( self::$instance ) && ! ( self::$instance instanceof WPCode ) ) {
self::$instance = new WPCode();
}
return self::$instance;
}
/**
* Constructor.
*/
private function __construct() {
$this->setup_constants();
$this->includes();
add_action( 'plugins_loaded', array( $this, 'load_components' ), - 1 );
}
/**
* Set up global constants.
*
* @return void
*/
private function setup_constants() {
define( 'WPCODE_FILE', __FILE__ );
$plugin_headers = get_file_data( WPCODE_FILE, array( 'version' => 'Version' ) );
define( 'WPCODE_VERSION', $plugin_headers['version'] );
define( 'WPCODE_PLUGIN_BASENAME', plugin_basename( WPCODE_FILE ) );
define( 'WPCODE_PLUGIN_URL', plugin_dir_url( WPCODE_FILE ) );
define( 'WPCODE_PLUGIN_PATH', plugin_dir_path( WPCODE_FILE ) );
$this->version = WPCODE_VERSION;
}
/**
* Require the files needed for the plugin.
*
* @return void
*/
private function includes() {
// Load the safe mode logic first.
require_once WPCODE_PLUGIN_PATH . 'includes/safe-mode.php';
// Plugin helper functions.
require_once WPCODE_PLUGIN_PATH . 'includes/helpers.php';
// Functions for global headers & footers output.
require_once WPCODE_PLUGIN_PATH . 'includes/global-output.php';
// Use the old class name for backwards compatibility.
require_once WPCODE_PLUGIN_PATH . 'includes/legacy.php';
// Add backwards compatibility for older versions of PHP or WP.
require_once WPCODE_PLUGIN_PATH . 'includes/compat.php';
// Register code snippets post type.
require_once WPCODE_PLUGIN_PATH . 'includes/post-type.php';
// The snippet class.
require_once WPCODE_PLUGIN_PATH . 'includes/class-wpcode-snippet.php';
// Auto-insert options.
require_once WPCODE_PLUGIN_PATH . 'includes/class-wpcode-auto-insert.php';
// Execute snippets.
require_once WPCODE_PLUGIN_PATH . 'includes/class-wpcode-snippet-execute.php';
// Handle PHP errors.
require_once WPCODE_PLUGIN_PATH . 'includes/class-wpcode-error.php';
// [wpcode] shortcode.
require_once WPCODE_PLUGIN_PATH . 'includes/shortcode.php';
// Conditional logic.
require_once WPCODE_PLUGIN_PATH . 'includes/class-wpcode-conditional-logic.php';
// Snippet Cache.
require_once WPCODE_PLUGIN_PATH . 'includes/class-wpcode-snippet-cache.php';
// Settings class.
require_once WPCODE_PLUGIN_PATH . 'includes/class-wpcode-settings.php';
// Custom capabilities.
require_once WPCODE_PLUGIN_PATH . 'includes/class-wpcode-capabilities.php';
// Map capabilities for backwards compatibility.
require_once WPCODE_PLUGIN_PATH . 'includes/capabilities.php';
// Install routines.
require_once WPCODE_PLUGIN_PATH . 'includes/class-wpcode-install.php';
// Logging class.
require_once WPCODE_PLUGIN_PATH . 'includes/class-wpcode-file-logger.php';
// Smart tags class.
require_once WPCODE_PLUGIN_PATH . 'includes/class-wpcode-smart-tags.php';
// Admin bar info class.
require_once WPCODE_PLUGIN_PATH . 'includes/class-wpcode-admin-bar-info.php';
if ( is_admin() || ( defined( 'DOING_CRON' ) && DOING_CRON ) ) {
require_once WPCODE_PLUGIN_PATH . 'includes/icons.php'; // This is not needed in the frontend atm.
// Code Editor class.
require_once WPCODE_PLUGIN_PATH . 'includes/admin/class-wpcode-code-editor.php';
require_once WPCODE_PLUGIN_PATH . 'includes/admin/class-wpcode-admin-page-loader.php';
require_once WPCODE_PLUGIN_PATH . 'includes/admin/admin-scripts.php';
require_once WPCODE_PLUGIN_PATH . 'includes/admin/admin-ajax-handlers.php';
// Always used just in the backend.
require_once WPCODE_PLUGIN_PATH . 'includes/class-wpcode-generator.php';
// Snippet Library.
require_once WPCODE_PLUGIN_PATH . 'includes/class-wpcode-library.php';
// Authentication for the library site.
require_once WPCODE_PLUGIN_PATH . 'includes/class-wpcode-library-auth.php';
// Importers.
require_once WPCODE_PLUGIN_PATH . 'includes/admin/class-wpcode-importers.php';
// File cache.
require_once WPCODE_PLUGIN_PATH . 'includes/class-wpcode-file-cache.php';
// The docs.
require_once WPCODE_PLUGIN_PATH . 'includes/admin/class-wpcode-docs.php';
// Notifications class.
require_once WPCODE_PLUGIN_PATH . 'includes/admin/class-wpcode-notifications.php';
// Upgrade page.
require_once WPCODE_PLUGIN_PATH . 'includes/admin/class-wpcode-upgrade-welcome.php';
// Metabox class.
require_once WPCODE_PLUGIN_PATH . 'includes/admin/class-wpcode-metabox-snippets.php';
// Metabox class.
require_once WPCODE_PLUGIN_PATH . 'includes/admin/class-wpcode-admin-notice.php';
// Ask for some love.
require_once WPCODE_PLUGIN_PATH . 'includes/admin/class-wpcode-review.php';
}
// Load lite-specific files.
require_once WPCODE_PLUGIN_PATH . 'includes/lite/loader.php';
}
/**
* Load the Generator on demand.
*
* @return WPCode_Generator
*/
public function generator() {
if ( ! isset( $this->generator ) ) {
$this->generator = new WPCode_Generator();
}
return $this->generator;
}
/**
* Load components in the main plugin instance.
*
* @return void
*/
public function load_components() {
$this->auto_insert = new WPCode_Auto_Insert();
$this->execute = new WPCode_Snippet_Execute();
$this->error = new WPCode_Error();
$this->conditional_logic = new WPCode_Conditional_Logic();
$this->cache = new WPCode_Snippet_Cache();
$this->settings = new WPCode_Settings();
$this->logger = new WPCode_File_Logger();
if ( is_admin() || ( defined( 'DOING_CRON' ) && DOING_CRON ) ) {
$this->file_cache = new WPCode_File_Cache();
$this->library = new WPCode_Library();
$this->library_auth = new WPCode_Library_Auth();
$this->importers = new WPCode_Importers();
$this->notifications = new WPCode_Notifications();
$this->admin_page_loader = new WPCode_Admin_Page_Loader_Lite();
$this->notice = new WPCode_Notice();
$this->smart_tags = new WPCode_Smart_Tags_Lite();
// Metabox class.
new WPCode_Metabox_Snippets_Lite();
// Usage tracking class.
new WPCode_Usage_Tracking_Lite();
}
new WPCode_Admin_Bar_Info_Lite();
do_action( 'wpcode_loaded' );
// Load the pluggable functions late to allow plugins to hook in.
require_once WPCODE_PLUGIN_PATH . 'includes/pluggable.php';
}
}
require_once dirname( __FILE__ ) . '/includes/ihaf.php';
WPCode();
Đau mắt hột - Big Family PharmacySkip to content
Đau mắt hột là tình trạng viêm mạn tính của lớp mô bên ngoài của mắt và mí mắt (kết mạc). Tình trạng này xảy ra do nhiễm một loại vi sinh vật là Chlamydia trachomatis. Bệnh cản trở chức năng bình thường của kết mạc như bôi trơn, bảo vệ và cấp dinh dưỡng cho lớp mô trong suốt ở mặt trước của mắt, tức là giác mạc. Giác mạc cũng có thể bị ảnh hưởng trực tiếp bởi quá trình viêm nhiễm này.
Tìm hiểu chung
Đau mắt hột là gì?
Đau mắt hột là tình trạng viêm mạn tính của lớp mô bên ngoài của mắt và mí mắt (kết mạc). Tình trạng này xảy ra do nhiễm một loại vi sinh vật là Chlamydia trachomatis. Bệnh cản trở chức năng bình thường của kết mạc như bôi trơn, bảo vệ và cấp dinh dưỡng cho lớp mô trong suốt ở mặt trước của mắt, tức là giác mạc. Giác mạc cũng có thể bị ảnh hưởng trực tiếp bởi quá trình viêm nhiễm này.
Triệu chứng thường gặp
Những dấu hiệu và triệu chứng của đau mắt hột
Các dấu hiệu của đau mắt hột rất đa dạng, từ không có triệu chứng đến bệnh nặng và kéo dài.
Các triệu chứng điển hình của đau mắt hột bao gồm:
Xốn mắt, vướng mắt như có hạt bụi trong mắt;
Ngứa mắt, hay mỏi mắt, thường xảy ra về chiều.
Biến chứng có thể gặp khi bị đau mắt hột
Bệnh đau mắt hột có thể dẫn đến các biến chứng nguy hiểm như viêm kết mạc mạn tính với triệu chứng bị đỏ mắt, ngứa, cộm, xốn quanh năm; lông quặm, lông xiêu là tình trạng tổn thương kết mạc bờ mi gây cho lông mi bị xiêu vẹo, biến dạng, quặp vào cọ xát liên tục vào giác mạc, gây tổn thương, trầy xước, loét giác mạc, làm mờ đục giác mạc. Thậm chí dẫn đến mù lòa.
Khi nào cần gặp bác sĩ?
Nếu có bất kỳ triệu chứng nào nêu trên xảy ra, bạn nên liên hệ ngay với bác sĩ để được kiểm tra và tư vấn. Mỗi người có một cơ địa khác nhau, bạn cần tham khảo ý kiến bác sĩ để có phương án điều trị thích hợp. Chẩn đoán và điều trị sớm sẽ giảm nguy cơ tăng nặng của bệnh và giúp bạn mau chóng hồi phục sức khỏe.
Nguyên nhân gây bệnh
Nguyên nhân dẫn đến đau mắt hột
Nguyên nhân gây ra bệnh đau mắt hột là do do nhiễm một loại vi sinh vật là Chlamydia trachomatis.
Nguy cơ mắc phải
Những ai có nguy cơ mắc phải đau mắt hột?
Bệnh có nguy cơ xảy ra ở mọi lứa tuổi. Tuy nhiên, bệnh thường xảy ra ở những nơi có điều kiện sống thấp, vệ sinh kém.
Yếu tố làm tăng nguy cơ đau mắt hột, bao gồm:
Tái nhiễm Chlamydia nhiều lần.
Bệnh mắt hột lây lan dễ dàng đặc biệt là ở trẻ em.
Phụ nữ dễ mắc bệnh hơn nam giới do phải chăm sóc trẻ nhỏ.
Nhiễm trùng tiến triển hoặc tái nhiễm dường như làm bệnh kéo dài.
Điều trị hiệu quả
Phương pháp xét nghiệm và chẩn đoán đau mắt hột
Bác sĩ chẩn đoán dực vào các triệu chứng, khám lâm sàng, xét nghiệm dịch nhầy/mủ mắt để xác định vi khuẩn gây bệnh.
Phương pháp điều trị đau mắt hột hiệu quả
Điều trị phụ thuộc vào mức độ và giai đoạn của bệnh.
Trong giai đoạn đầu, điều trị bằng thuốc kháng sinh có thể giúp loại bỏ các nhiễm trùng. Bác sĩ có thể kê toa thuốc mỡ tra mắt Tetracycline hoặc Azithromycin uống (Zithromax). Azithromycin có hiệu quả hơn Tetracycline nhưng tốn kém hơn.
Điều trị các giai đoạn sau của bệnh đau mắt hột bao gồm dị tật mí gây đau có thể cần phải phẫu thuật.
Nếu giác mạc bị ảnh hưởng nặng, gây giảm nghiêm trọng thị lực, ghép giác mạc là một lựa chọn.
Chế độ sinh hoạt phù hợp
Những thói quen sinh hoạt có thể giúp bạn hạn chế diễn tiến của đau mắt hột
Các biện pháp phòng ngừa và kiểm soát bệnh bao gồm:
Giữ gìn vệ sinh cá nhân cho mắt bằng các biện pháp: Rửa mặt bằng khăn mặt riêng sạch, nước rửa sạch.
Giữ tay sạch, không dụi bẩn lên mắt, nhất là các em nhỏ.
Không tắm ao hồ, tránh để nước bẩn bắn vào mắt.
Đi đường gió bụi nên đeo kính mát, về nhà nên rửa mặt sạch sẽ.
Tiêu diệt ruồi nhặng là trung gian truyền bệnh.
Đến khám bác sĩ ngay khi có những triệu chứng khó chịu ở mắt.
Kiên trì điều trị theo sự hướng dẫn của bác sĩ.
Mọi thông tin trên đây chỉ mang tính chất tham khảo. Việc sử dụng thuốc phải tuân theo hướng dẫn của bác sĩ chuyên môn.