soma 63 ارسال شده در دی 97 گزارش بازنشر ارسال شده در دی 97 سوالی که من دارم قبلا به نحوه ای دیگه مطرح کرده بودم که البته خودم تونستم حلش کنم به غیر از یک مسئله دیگه که اگه دوستان کمک کنن حل بشه ممنون میشم ،(لینک تاپیک مد نظرم) کسی توی اون تاپیک پاسخ نداد، امیدوارم اینجا به جواب برسم چطور میشه شماره تماس کاربر مانند سایت دیوار یه بخشیش مخفی باشه و تا وقتی دکمه نمایش کامل شماره تماس زده نشده لینکش فعال نشه ؟ در کد من تعداد کاراکترهای مخفی رو میتونم مشخص کنم ولی لینک حتی زمانی که کاراکتر ها مخفی هستن قابل کلیک و نمایش هست نقل قول لینک به ارسال
mehran-b 2385 ارسال شده در دی 97 گزارش بازنشر ارسال شده در دی 97 سلام و درود @soma شما موفق شدید که بخشی از شماره رو مخفی کنید؟ نقل قول لینک به ارسال
soma 63 ارسال شده در دی 97 مالک گزارش بازنشر ارسال شده در دی 97 (ویرایش شده) در 1 ساعت قبل، mehran-b گفته است : سلام و درود @soma شما موفق شدید که بخشی از شماره رو مخفی کنید؟ سلام mehran-b@ بله 4 رقم آخر شماره مخفی میشه ، کدهام به این صورت هست : که با تغییر اعداد برای این متغیر $wp_rem_member_phone_num میشه تعداد اعدادی که مخفی میشه رو کنترل کرد ، خروجی هم در تصویر مشاهده میکنید . درحالت مخفی در حالت نمایش خیلی سرچ کردم و سایتهای مختلفی رو بررسی کردم،در سایتی مثل دیوار که کلا اومده اطلاعات تماس رو مخفی کرده تا کاربر قوانین رو تایید کنه و بعد اطلاعات نمایش داده میشه که این مد نظرم نبود. و سایتهایی هم که مثل شیپور شماره تماس داشتنن رو بررسی کردم ، متوجه شدم که که بر خلاف کد من ، برای تکمیل شماره اول باید روی شماره کلیک کرد و مثل کار من دکمه نمایش برای این کار وجود نداره . برای این کار سعی کردم کدهای javascript موجود توی کد که روی دکمه نمایش اعمال میشه رو برای بخش شماره اجرا کنم که باکلیک اول شماره تکمیل بشه و اونموقع فعال شدن لینک منطقیه ، هنوز نتیجه موفقیت امیزی نداشتم سایتم هم روی لوکال هست $wp_rem_member_phone_num = $post_id; if ( isset($wp_rem_member_phone_num) && $wp_rem_member_phone_num != '' ) { $new_phone_num = $wp_rem_member_phone_num; if ( strlen($wp_rem_member_phone_num) > 4 ) { wp_enqueue_script('wp_rem_encryption_js'); ?> <script> jQuery(document).ready(function ($) { var encodedString = decode64("<?php echo substr($wp_rem_member_phone_num, -4); ?>"); $("#abs-<?php echo intval($rand_id); ?>").attr("data-onum", encodedString); }); </script> <?php $new_phone_num = '<span ' . $phone_span_extra_attr . ' id="abs-' . $rand_id . '" class="sh-hde-cnt-num sh-hde-cnt-num-' . $rand_id . '" data-onum=""><a class="cntct-num-hold" href="tel:' . str_replace(' ', '', substr($wp_rem_member_phone_num, 0, (strlen($wp_rem_member_phone_num) - 4))) . '">' . substr($wp_rem_member_phone_num, 0, (strlen($wp_rem_member_phone_num) - 4)) . '<span class="ch-cntct-num">xxxx</span> </a> <a href="javascript:void(0)" class="ch-cnt-show-num ch-cnt-show-num-' . $rand_id . '">' . wp_rem_plugin_text_srt('wp_rem_prop_detail_contact_cnt_num_show') . '</a></span>'; } $html = $before . $icons_class . ($new_phone_num) . $after; ?> <script> jQuery(document).on("click", ".ch-cnt-show-num-<?php echo intval($rand_id); ?>", function () { var main_dvi = jQuery(".sh-hde-cnt-num-<?php echo intval($rand_id); ?>"); var chnge_dvi = main_dvi.find(".ch-cntct-num"); var valuer = main_dvi.data("onum"); var decodedString = encodePlain(valuer); if (chnge_dvi.html() == "xxxx") { chnge_dvi.html(decodedString); jQuery(this).html("<?php echo wp_rem_plugin_text_srt('wp_rem_prop_detail_contact_cnt_num_hide'); ?>"); } else { chnge_dvi.html("xxxx"); jQuery(this).html(" <?php echo wp_rem_plugin_text_srt('wp_rem_prop_detail_contact_cnt_num_show'); ?>"); } }); </script> ویرایش شده دی 97 توسط soma نقل قول لینک به ارسال
mehran-b 2385 ارسال شده در دی 97 گزارش بازنشر ارسال شده در دی 97 @soma وقتی رو دکمه نمایش کلیک شد باید به وسیله AJAX یه درخواست ارسال کنید به سرور و شماره کامل رو دریافت کنید و نمایش کنید. نباید از ابتدا داخل سورس سایت شماره کامل وجود داشته باشه. این مورد به خاطر اینه که موتورهای جستجو شماره کامل رو ایندکس نکنند. 2 نقل قول لینک به ارسال
پست های پیشنهاد شده
به گفتگو بپیوندید
هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .