اگر از افزونه  Dateabse Logging (dblog) در سایت دروپالی خود استفاده می کنید، می دانید که در صفحه جزئیات هر رویداد سایت یک IP برای نمایش آی پی کاربری که باعث ایجاد آن رویداد شده است نمایش داده می شود.
گاهی مشاهده می کنم که ربات ها با اسامی مختلف می خواهند وارد سایت شوند و یا یک کاربر کارهای مشکوک در سایت انجام می دهد. اولین کاری که انجام می دهم این است که آی پی مورد نظر که در صفحه رویداد با عنوان HOST ذکر شده است را با ابزارهای تشخیص آی پی بررسی میکنم تا اگر لازم باشد آن آی پی را مسدود کنم.

راهی ندارم جز آنکه که آن آی پی را کپی و در سایتی مانند : whatismyipaddress جستجو کنم.
اما کاش این آی پی که در صفحه رویداد نمایش داده میشود خودش لینک به صفحه بررسی آی پی می بود.
خوب شاید با یک تغییر مختصر در افزونه dblog این کار را انجام داده و کار خودمان را راحت تر کنیم:(البته راه دومی هست که در آخر مطلب اضافه شده است)

افزونه dblog در دروپال 6 و 7 در پوشه Modules ریشه سایت دروپال موجود است. یک فایل با عنوان dblog.admin.inc دارد.
در خط 187 این فایل عبارت زیر وجود دارد: check_plain($dblog->hostname) که باعث نمایش آی پی می شود.

این خط را به شکل زیر ویرایش می‌کنیم:

        '<a href="http://whatismyipaddress.com/ip/'.check_plain($dblog->hostname).'" target="_blank">'.check_plain($dblog->hostname).'</a>',

 

 

بعد فایل را ذخیره کنید. حالا آی پی صفحه رویداد لینک به ابزار اطلاعات آی پی می شود. شما هر ابزاری را که برای تشخیص آی پی دارید می توانید در این خط جایگزین  کنید.

لازم به ذکر می دانم که با آپدیت هسته دروپال این خط به حالت پیش فرض افزونه آپدیتی برمی گردد. لذا این تغییر باید دوباره انجام شود.

راه دوم: راه دیگر استفاده از یک کد jQuery هست که دیگر با آپدیت از بین نرود.
در فایل js تم مدیریت  سایت خود این کد را اضافه کنید:

(function($){
  $(document).ready(function(){
    $('table.dblog-event tbody tr:nth-child(8) td').each(function(){
      $(this).html('<a href="http://whatismyipaddress.com/ip/'+$(this).text()+
    '" target="_blank">'+$(this).text()+'</a>')
    });
  });
})(jQuery);

این کد در هر بار لود صفحه اگر جدول رویدادی وجود داشته باشد، متن موجود آن را تبدیل به لینک می‌کند.

امیدوارم از این آموزش بهره برده باشید.