راهنمایی در مورد یک کد (حذف لینک های موجود در متن)
سلام دوستان
با قرار دادن کد زیر در فانکشن وردپرس تمام لینک های موجود در متن حذف میشه
کد HTML:
add_filter('the_content', 'removelink_content',1);
function removelink_content($content = '')
{
preg_match_all("#<a(.*?)>(.*?)</a>#i",$content, $matches);
$num = count($matches[0]);for($i = 0;$i < $num;$i++){
$content = str_replace($matches[0][$i] , $matches[2][$i] , $content);
}
return $content;
}
حالا میخوام همه لینک ها حذف نشه بلکه یکسری لینک هایی که بهش میدم حذف بشه و همچنین یکسری لینک هایی که آخرشون متغیر هست مثل (site.com/tag/1125)
لطفا راهنمایی کنید کد بالا چه تغییری باید بکنه
نقل قول: راهنمایی در مورد یک کد (حذف لینک های موجود در متن)
نقل قول:
نوشته شده توسط
ahmad4u
سلام دوستان
لطفا راهنمایی کنید کد بالا چه تغییری باید بکنه
سلام
لطفا الگوی عبارت باقاعده را به شکل زیر تغییر دهید.
preg_match_all("#<a.*?href=['\"]+(.*?)['\"]+.*?>(.*?)</a>#i",$content, $matches);
حال می توانید با استفاده از این متغییر $matches[1][$i] در داخل حلقه به مقدار url لینک دسترسی پیدا کنید. حال با توجه به نیاز خود url را پارس کنید و شرطهای مورد نظر خود را بررسی کنید.