';
$content = str_replace($placeholder, $scriptTag, $content);
}
}
}
return $content;
}//Perfmatters Compatibility
add_filter('ez_toc_pro_inline_css','ez_toc_perfmatters_touch_css');
function ez_toc_perfmatters_touch_css($css){
if('css' == ezTOC_Option::get( 'toc_loading' ) && class_exists('Perfmatters\Config') && !empty(Perfmatters\Config::$options['assets']['delay_js']) && !empty(Perfmatters\Config::$options['assets']['fastclick'])) {
$css .= 'label > * { pointer-events:none; }';
}
return $css;
}
/**
* Woodmart + WPbakery Gallery compatibility
* @since 2.0.58
*/
function ez_toc_woodmart_gallery_fix(){
if(function_exists('woodmart_load_classes') && class_exists('Vc_Manager')){
if(!wp_style_is('el-section-title')){
wp_register_style( 'el-section-title', WOODMART_THEME_DIR.'/css/parts/el-section-title.min.css', array() ,ezTOC::VERSION );
wp_enqueue_style( 'el-section-title' );
}
if(!wp_style_is('wd-section-title-style-simple-and-brd')){
wp_register_style( 'wd-section-title-style-simple-and-brd', WOODMART_THEME_DIR.'/css/parts/el-section-title-style-simple-and-brd.min.css', array() ,ezTOC::VERSION);
wp_enqueue_style( 'wd-section-title-style-simple-and-brd' );
}
if(!wp_style_is('wd-owl-carousel')){
wp_register_style( 'wd-owl-carousel', WOODMART_THEME_DIR.'/css/parts/lib-owl-carousel.min.css', array() ,ezTOC::VERSION);
wp_enqueue_style( 'wd-owl-carousel' );
}
if(!wp_style_is('wd-image-gallery')){
wp_register_style( 'wd-image-gallery', WOODMART_THEME_DIR.'/css/parts/el-gallery.min.css', array() ,ezTOC::VERSION);
wp_enqueue_style( 'wd-image-gallery' );
}if(!wp_style_is('wd-accordion')){
wp_register_style( 'wd-accordion', WOODMART_THEME_DIR.'/css/parts/el-accordion.min.css', array() ,ezTOC::VERSION);
wp_enqueue_style( 'wd-accordion' );
}
if(!wp_style_is('wd-tabs')){
wp_register_style( 'wd-tabs', WOODMART_THEME_DIR.'/css/parts/el-tabs.min.css', array() ,ezTOC::VERSION);
wp_enqueue_style( 'wd-tabs' );
}if(!wp_style_is('wd-team-member')){
wp_register_style( 'wd-team-member', WOODMART_THEME_DIR.'/css/parts/el-team-member.min.css', array() ,ezTOC::VERSION);
wp_enqueue_style( 'wd-team-member' );
}
}
}
add_action('wp_enqueue_scripts', 'ez_toc_woodmart_gallery_fix');/**
* Ad inserter plugin compatibility
* url : https://wordpress.org/plugins/ad-inserter/
* When toc shortcode being added inside ad inserter block, it runs infinite loop. Below code is the solution for it.
* @since 2.0.62
* return boolean
*/
add_filter('ez_toc_apply_filter_status_manually', 'ez_toc_adinserter_block_has_toc_shortcode',10,1);function ez_toc_adinserter_block_has_toc_shortcode($status){
if ( in_array( 'ad-inserter/ad-inserter.php', apply_filters( 'active_plugins', get_option( 'active_plugins' ) ) ) ) {
global $block_object;
for ($block = 0; $block <= 96; $block ++) {
if(isset($block_object [$block])){
$obj = $block_object [$block];
if(is_object($obj) && is_array($obj->wp_options)){
if(has_shortcode( $obj->wp_options['code'] , 'ez-toc' ) || has_shortcode( $obj->wp_options['code'] , 'toc' )){
$status = false;
break;
}
}
}
}}
return $status;
}/**
* Current Year, Symbols and IP Shortcode compatibility
* shortcode were not being parse for heading title in elementor
* plugin url : https://wordpress.org/plugins/current-year-shortcode/
* @since 2.0.62
*/
add_filter('ez_toc_table_heading_title_anchor', 'ez_toc_parse_curreny_year_shortcode',10,1);
add_filter('ez_toc_content_heading_title', 'ez_toc_parse_curreny_year_shortcode',10,1);
add_filter('ez_toc_content_heading_title_anchor', 'ez_toc_parse_curreny_year_shortcode',10,1);function ez_toc_parse_curreny_year_shortcode($content){
if ( in_array( 'current-year-shortcode/year-kgm.php', apply_filters( 'active_plugins', get_option( 'active_plugins' ) ) )) {
$content = do_shortcode($content);
}
return $content;
}/** Pressbook theme Compatiblity
* @since 2.0.63
* @param bool $status The current status of applying the TOC filter.
* @return bool The updated status of applying the TOC filter.
*/
add_filter('ez_toc_apply_filter_status_manually', 'ez_toc_press_books_theme_compatibility',10,1);
function ez_toc_press_books_theme_compatibility($status){
if(function_exists('wp_get_theme')){
$active_theme = wp_get_theme();
if(!empty($active_theme) && $active_theme->get( 'Name' ) == 'McLuhan'){
$status = false;
}
}
return $status;
}/**
* Divi Builder Compatibility
* @since 2.0.64
*/
add_filter(
'ez_toc_strip_shortcodes_with_inner_content',
function( $tags_to_remove ) {
$shortcodes = array (
'et_pb_text'
);
$tags_to_remove = array_merge( $tags_to_remove, $shortcodes );
return $tags_to_remove;
});/**
* To fix icon issue in TOC for the woo category page description
* @param mixed $allowed_tags
* @return mixed
*/
function eztoc_woo_category_toc_fix($allowed_tags) {
if( function_exists('is_product_category') && is_product_category() && true == ezTOC_Option::get( 'include_product_category', false)) {
$allowed_tags['svg'] = array(
'width' => true,
'height' => true,
'viewbox' => true,
'xmlns' => true,
'fill' => true,
'stroke' => true,
'style' => true,
'class'=> true
);
$allowed_tags['path'] = array(
'd' => true,
'fill' => true,
'stroke' => true,
);
$allowed_tags['span']['style'] = true;
}return $allowed_tags;
}
add_filter('wp_kses_allowed_html', 'eztoc_woo_category_toc_fix', 10, 2);/*
*Compatibility for Customize Post Categories for WPBakery Page Builder plugin
*@see https://github.com/ahmedkaludi/easy-table-of-contents/issues/843
*//**
* Custom post categories for Customize Post Categories for WPBakery Page Builder plugin
* @param string $content
* @return string
*/
add_filter('ez_toc_modify_process_page_content', 'ez_toc_post_categories_for_wpbakery_page_builder', 10, 1);function ez_toc_post_categories_for_wpbakery_page_builder($content) {
if (function_exists('Vc_Manager') && function_exists('POST_CATEGORY_WPBAKERY_PAGE_BUILDER\plugin_init') && is_category( ) ) {
global $wpdb;
$template_id = ez_toc_wpbakery_get_template_id();
if($template_id){
$content = get_post_field('post_content', $template_id);
}
}
return $content;
}/**
* Start buffer for Customize Post Categories for WPBakery Page Builder plugin
*/
add_action('template_redirect', 'ez_toc_start_buffer_for_wpbakery_category');
function ez_toc_start_buffer_for_wpbakery_category() {
if (function_exists('Vc_Manager') && is_category() && function_exists('POST_CATEGORY_WPBAKERY_PAGE_BUILDER\plugin_init')) {
ob_start('ez_toc_modify_wpbakery_category_template');
}
}/**
* Modify the category template for WPBakery Page Builder with Post Categories plugin
* @param string $buffer
* @return string
*/
function ez_toc_modify_wpbakery_category_template($buffer) {
$template_id =ez_toc_wpbakery_get_template_id();
if($template_id){
$post = ezTOC::get( $template_id );
if($post){
$find = $post->getHeadings();
$replace = $post->getHeadingsWithAnchors();
if ( !empty( $find ) && !empty( $replace ) && !empty( $buffer ) ){
return mb_find_replace($find, $replace, $buffer);
}
}
}return $buffer;
}/**
* Get template id for Customize Post Categories for WPBakery Page Builder plugin
* @return mixed
*/
function ez_toc_wpbakery_get_template_id(){
global $wpdb;
$template_id = false ;
$category_id = get_queried_object_id();
$template_id = get_term_meta($category_id, 'mst_post_cat_template', true);
if( $template_id && $template_id != 'active'){
return $template_id;
}else{
$template_id = $wpdb->get_var( $wpdb->prepare("
SELECT p.ID
FROM {$wpdb->posts} p
INNER JOIN {$wpdb->postmeta} pm ON p.ID = pm.post_id
WHERE p.post_type = %s
AND p.post_status = %s
AND pm.meta_key = %s
AND pm.meta_value = %s
LIMIT 1
",
'category_wpb',
'publish',
'mst_active',
'1'
));}return $template_id;
}/**
* Add js backup fix for Customize Post Categories for WPBakery Page Builder plugin
*/
add_action('wp_footer', 'ez_toc_js_to_footer_for_wpbakery_category');
function ez_toc_js_to_footer_for_wpbakery_category() {
$js_fallback_fix = false;if (function_exists('Vc_Manager') && is_category() && function_exists('POST_CATEGORY_WPBAKERY_PAGE_BUILDER\plugin_init')) {
$template_id = ez_toc_wpbakery_get_template_id();
if ($template_id) {
$post = ezTOC::get($template_id);
if ($post) {
$find = $post->getHeadings();
$replace = $post->getHeadingsWithAnchors();
if (!empty($find) && !empty($replace)) {
$js_fallback_fix = '
document.addEventListener("DOMContentLoaded", function () {
function eztocfindAndReplaceContent(findArray, replaceArray) {
if (!Array.isArray(findArray) || !Array.isArray(replaceArray) || findArray.length !== replaceArray.length) {
console.error("The find and replace arrays must be of the same length.");
return;
}let bodyContent = document.body.innerHTML;
findArray.forEach((findText, index) => {
const replaceText = replaceArray[index];
const regex = new RegExp(findText, "g");
bodyContent = bodyContent.replace(regex, replaceText);
});document.body.innerHTML = bodyContent;
}const findArray = ' . wp_json_encode($find) . ';
const replaceArray = ' . wp_json_encode($replace) . ';
eztocfindAndReplaceContent(findArray, replaceArray);
});
';
}
}
}
} elseif (class_exists('Publisher') && is_singular()) {
$post = ezTOC::get(get_the_ID());
if ($post) {
$find = $post->getHeadings();
$replace = $post->getHeadingsWithAnchors();
if (!empty($find)) {
$js_fallback_fix = '
document.addEventListener("DOMContentLoaded", function () {function eztocExtractHeadingTexts(inputArray) {
return inputArray.map((input) => {
if (input.length <= 6) {
return "";
}
return input.substring(1, input.length - 5);
});
}
function eztocStripTags(input) {
return input.replace(/<[^>]*>.*?<\/[^>]*>/gis, \'\');
}const findArray = eztocExtractHeadingTexts(' . wp_json_encode($find) . ');
const replaceArray = eztocExtractHeadingTexts(' . wp_json_encode($replace) . ');
const elements = document.querySelectorAll(\'h1:not(:has(span.ez-toc-section)), h2:not(:has(span.ez-toc-section)), h3:not(:has(span.ez-toc-section)), h4:not(:has(span.ez-toc-section)), h5:not(:has(span.ez-toc-section)), h6:not(:has(span.ez-toc-section))\');
if(elements.length){
elements.forEach(function(item, index){
let heading_inner = item.innerHTML;
let heading_txt = eztocStripTags(heading_inner);
const find_index = findArray.indexOf(heading_txt.trim());
if (find_index !== -1){
heading_inner = heading_inner.replace(findArray[find_index],replaceArray[find_index]);
item.innerHTML = heading_inner;
}
});
}});
';
}
}
}if ($js_fallback_fix) {
?>
أفضل شركة صبغ في الإمارات: خبرة وجودة عالية - شركة admsco
التجاوز إلى المحتوى إذا كنت تبحث عن أفضل شركة صبغ في الإمارات التي تقدم خدمات صبغ عالية الجودة وبأسعار مناسبة، فأنت قد وجدت المكان المناسب. نحن نقدم خدمات صبغ ودهانات للمنازل والمكاتب والمحلات التجارية في جميع أنحاء الإمارات. نحن نفخر بخبرتنا الواسعة في هذا المجال وبجودة الخدمات التي نقدمها لعملائنا.
خدمات صبغ متنوعة تلبي احتياجاتكنحن نقدم مجموعة شاملة من خدمات الصبغ والدهانات التي تلبي جميع احتياجاتك. سواء كنت ترغب في صبغ غرفة واحدة أو منزل بأكمله، فإننا نستطيع تنفيذ المشروع بكفاءة واحترافية. نحن نعمل مع فريق من الفنيين المهرة والمحترفين الذين يضمنون تنفيذ العمل بأعلى مستويات الجودة.
أفضل الأسعار والعروض المميزةنحن نفهم أهمية الحصول على خدمات صبغ عالية الجودة بأسعار معقولة. لذا، نحن نقدم أفضل الأسعار في السوق ونضمن رضا عملائنا. بالإضافة إلى ذلك، نقدم عروضًا مميزة وتخفيضات منتظمة لعملائنا الدائمين. نحن نسعى جاهدين لتقديم أفضل قيمة ممكنة لعملائنا وضمان رضاهم التام.
لا تتردد في اختيار شركتنا لصبغ منزلك أو مكتبك أو محلك التجاري. نحن نضمن لك جودة عالية وخدمة ممتازة. اتصل بنا اليوم للحصول على استشارة مجانية وتقديم عرض سعر مخصص لمشروعك.
موضوعات ذات صلة
شركة صبغ في دبي0551615724خصم 40% بالإضافة إلى ذلك، نحن نقدم مجموعة واسعة من الخدمات في مجال الصبغ. سواء كنت ترغب في تغيير لون الجدران الداخلية أو الخارجية، أو تجديد الدهانات القديمة، أو إضافة تأثيرات خاصة مثل الجص المغربي أو الديكورات الجدارية، فإننا نستطيع تلبية جميع احتياجاتك وتحويل أي مساحة إلى عمل فني رائع. أهمية الصبغ والدهانات نحن نفهم أهمية اللون والتصميم في خلق جو مناسب للمكان، ولذلك نقدم استشارات مجانية لعملائنا. سيقوم فريقنا المتخصص بمساعدتك في اختيار الألوان المناسبة وتصميم الديكور الذي يعكس ذوقك الشخصي ويناسب أسلوب حياتك. بغض النظر عن حجم المشروع، فإننا نضمن لك تجربة ممتعة وسهلة. سنقوم بتنظيف المكان قبل البدء في العمل، ونلتزم بالانتهاء في الوقت المحدد وبأعلى مستويات الجودة. كما أننا نقدم خدمات ما بعد البيع، حيث سنكون في تواصل…
افضل شركة صبغ في الشارقة 0551615724 نحن نفخر بأنفسنا على أننا واحدة من أفضل شركة صبغ في الشارقة.0551615724 لدينا سمعة ممتازة في تقديم خدمات صبغ عالية الجودة وفقًا لأعلى المعايير المهنية. فريقنا مؤهل ومدرب بشكل جيد، ويستخدم أحدث التقنيات والمعدات لضمان تنفيذ العمل بدقة وفعالية. ما يميزنا عن الشركات الأخره عندما تختارنا كشركة صبغ لمشروعك، فإننا نضمن لك الحصول على نتائج مذهلة. نحن نعمل بشكل وثيق معك لفهم رؤيتك واحتياجاتك، ونوفر لك الاستشارة المهنية والإرشاد لاختيار الألوان المناسبة والتشطيبات الملائمة. سواء كنت ترغب في ألوان زاهية ومبهجة أو ألوان هادئة ومريحة، فإننا نقدم لك مجموعة واسعة من الخيارات لتلبية ذوقك وتفضيلاتك. بغض النظر عن حجم مشروعك، فإننا نهتم بكل التفاصيل الصغيرة لضمان تنفيذ العمل بدقة واحترافية. نحن نستخدم مواد ذات جودة عالية وطلاءات متينة لضمان…