لینک دار کردن خودکار کلمات در وردپرس

با سلام. یکی از روش های افزایش بازدید و تاثیر مثبت در بهینه سازی سایت لینک دادن به بقیه مطالب وردپرس می باشد. با اینکه این لینک دار کردن محتوا و کلمات کلیدی بسیار مهم می باشد ولی در صورتی که بخواهید این کار را به صورت تکی و دستی انجام دهید نیاز به صرف زمان زیادی دارد و همچنین کار خسته کننده می باشد پس ما به یک راه ساده و راحت احتیاج داریم و آن هم استفاده از کد می باشد به طوری که چند کلمه و عبارت را به همراه لینک مشخص کنیم و در کد قرار دهیم و در کل سایت اگر از چنین کلمات و عبارت هایی استفاده شود به طور خودکار لینک دار خواهند شد. مزیت دیگری که این قطعه کد دارد این است که هر زمان شما از لینک دار کردن محتوای خود منصرف شوید به راحتی با پاک کردن این کد می توانید تمام محتوای سایت را به شکل عادی خود برگردانید. افزونه مدیریت لینک های داخلی وردپرس.
لینک دار کردن خودکار کلمات در وردپرس
لینک دار کردن مطالب تاثیر بسیاری در سئو سایت شما دارد و رتبه سایت را در گوگل افزایش می دهد حتی اگر شما مایل باشید لینک های داخلی سایت را مشاهده کنید کافی است به گوگل وب مستر سایت خود مراجعه و لینک های داخلی را مشاهده کنید.
برای انجام این کار یعنی قرار دادن کد باید فایل functions.Php قالب سایت را باز کنید و کد زیر را در آن کپی کنید. این کد باید خارج از کد if فایل قرار گیرد.
<?php function link_words($content){ $words = array( 'wordpress', 'ads' ); $links = array( '<a href="http://mabnawp.ir">wordpress</a>', '<a href="http://mabnawp.ir/ads">ads</a>' ); $content = str_replace($words , $links ,$content); return $content; } add_filter('the_content', 'link_words'); add_filter('the_excerpt', 'link_words'); ?>
توضیح کدها
در زیر قسمت words= ARRAY$ باید کلمات خود را قرار دهید.
در زیر قسمت links=ARRAY$ باید به ترتیب کلماتی که در بالا وارد کرده اید در اینجا لینک مورد نظرتون را مشخص کنید.
با توجه به کد بالا باید بگم که یک مشکلی احتمالا پیش بیاد و اونم اینه کلیه کلمه های که لیست میکنیم چه در تصویر یا عنوان یک صفحه را نیز به صورت خودکار لینک دار میکند برای جلوگیری از این امر لطفا از کد زیر استفاده کنید.
function replace_keywords_fn($where) { //این قسمت را ویرایش کنید $KWs = array('1st keyword', '2nd keyword'); $URLs = array('http://google.com', 'http://yahoo.com'); //این قسمت را ویرایش نکنید $pattern = array(); $replacement = array(); for($i=0; $i<count($KWs); $i++) { $pattern2 = '/<a[^>]*>(.*?)'.$KWs[$i].'(.*?)</a>/'; if(preg_match($pattern2, $where)) continue; $pattern[$i] = '/([ ][!$%&()*+,./:;=?@_{}-])('.$KWs[$i].')([ ][!$%&()*+,./:;=?@_{}-])/'; $replacement[$i] = '1<a href="'.$URLs[$i].'">2</a>3'; } return preg_replace($pattern, $replacement, $where, 1); } add_filter('content_save_pre','replace_keywords_fn');