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();
Viêm mạch - Big Family PharmacySkip to content
Viêm mạch là tình trạng các mạch máu bị viêm, các thành mạch máu thay đổi thất thường, bao gồm dày lên, yếu, hẹp và tạo sẹo. Những thay đổi này làm hạn chế lưu lượng máu, gây tổn thương cơ quan và mô.
Tìm hiểu chung
Viêm mạch là gì?
Viêm mạch là tình trạng các mạch máu bị viêm, các thành mạch máu thay đổi thất thường, bao gồm dày lên, yếu, hẹp và tạo sẹo. Những thay đổi này làm hạn chế lưu lượng máu, gây tổn thương cơ quan và mô. Có rất nhiều loại viêm mạch và bệnh này thường hiếm gặp. Viêm mạch có thể ảnh hưởng đến một số cơ quan chẳng hạn như da hoặc có thể liên quan đến một số cơ quan khác. Bệnh gồm 2 dạng là cấp tính hoặc mạn tính.
Triệu chứng thường gặp
Những dấu hiệu và triệu chứng của viêm mạch
Các dấu hiệu điển hình của bệnh bao gồm:
Mệt mỏi và khó chịu;
Suy nhược và sụt cân;
Phát ban, đổi màu da và loét;
Đau cơ;
Khó thở và ho;
Suy tim sung huyết;
Nhức đầu, lú lẫn, động kinh, đột quỵ, liệt, tê và đầu óc choáng váng;
Suy thận.
Khi nào cần gặp bác sĩ?
Bệnh viêm mạch gây ra các biến chứng nguy hiểm như tổn hại cơ quan, một số loại viêm mạch có thể là nghiêm trọng, gây thiệt hại đến các cơ quan lớn.
Tái phát viêm mạch. Ngay cả khi điều trị viêm mạch bước đầu thành công, điều kiện có thể tái phát và cần điều trị bổ sung. Trong trường hợp khác, viêm mạch có thể không bao giờ biến mất hoàn toàn và cần phải được điều trị liên tục.
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. 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 viêm mạch
Chưa rõ nguyên nhân gây ra viêm mạch. Một số là do di truyền, một số khác là do hệ miễn dịch nhầm lẫn nên tấn công các tế bào mạch máu khỏe mạnh.
Các yếu tố có thể kích hoạt gây ra phản ứng hệ miễn dịch này bao gồm:
Nhiễm trùng chẳng hạn như viêm gan B và viêm gan C.
Ung thư máu.
Các bệnh về hệ miễn dịch như viêm khớp dạng thấp, lupus và xơ cứng bì.
Phản ứng với một số thuốc.
Nguy cơ mắc phải
Những ai có nguy cơ bị viêm mạch?
Đây là căn bệnh phổ biến và ảnh hưởng đến mọi lứa tuổi, tuy nhiên một số loại viêm mạch có ảnh hưởng đến một nhóm tuổi nhất định hơn những nhóm tuổi khác.
Điều trị hiệu quả
Phương pháp xét nghiệm và chẩn đoán viêm mạch
Bác sĩ chẩn đoán dựa vào các xét nghiệm bao gồm:
Xét nghiệm máu: Giúp tìm dấu hiệu viêm chẳng hạn như nồng độ protein phản ứng C cao; cho biết có đủ tế bào hồng cầu hay không; tìm các kháng thể tương bào chống bạch cầu trung tính.
Xét nghiệm nước tiểu: Nhằm xem liệu nước tiểu có chứa các tế bào hồng cầu hay có quá nhiều protein không.
Xét nghiệm hình ảnh: Giúp xác định các mạch máu và các cơ quan bị ảnh hưởng ra sao, bao gồm siêu âm, X-quang, chụp cắt lớp vi tính.
Sinh thiết: Lấy một mẫu mô nhỏ từ vùng cơ thể bị ảnh hưởng.
Chẩn đoán viêm mạch võng mạc (viêm mạch liên quan đến võng mạc hoặc bề mặt bên trong mắt).
Phương pháp điều trị viêm mạch hiệu quả
Điều trị viêm mạch phụ thuộc vào chẩn đoán và các cơ quan bị ảnh hưởng. Bác sĩ có thể dùng corticosteroid để kiểm soát tình trạng viêm hoặc các loại thuốc làm ảnh hưởng đến hệ miễn dịch. Bạn có thể được bác sĩ kê toa một loại thuốc corticosteroid như prednisone hoặc methylprednisolone. Tác dụng phụ của corticosteroid rất trầm trọng, đặc biệt nếu bạn uống thuốc trong một thời gian dài.
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 viêm mạch
Tuân thủ theo hướng dẫn của bác sĩ trong việc điều trị.
Liên hệ ngay với bác sĩ khi cơ thể có những bất thường trong quá trình điều trị.
Thăm khám định kì để được theo dõi tình trạng sức khỏe, diễn tiến của bệnh.
Phương pháp phòng ngừa hiệu quả
Vì đa số các tình trạng viêm mạch là tự miễn (hệ miễn dịch của cơ thể tấn công vào các mạch máu) nên không có các biện pháp phòng ngừa. Một số loại bệnh liên quan đến nhiễm trùng hoặc phản ứng dị ứng có thể phòng ngừa được nếu nhiễm trùng được ngăn ngừa hoặc tránh tác nhân gây dị ứng.
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.