ساخت url سئو شده با PHP ( ساخت URL با عنوان )
url سئو شده با PHP – حتما در وردپرس شاهد این بوده اید که هر عنوان که برای مطلب خود انتخاب می کردید به صورت خودکار برای لینک مطلب در نظر گرفته می شد . این کار با می شود لینک تان seo friendly باشد .
در این آموزش با کمک Regex ها رشته را گرفته و یکسری فیلتر برای استاندارد سازی لینک انجام می دهیم و آن را با توجه به تعداد کلمات برمی گردانیم .
اسکریپت index.php
- متود generateUrl : لینک را گرفته و یکسری کاراکتر مثل # _ را از آن حذف می کند .
- متود limitWords : تعداد کلمات را با توجه به تعداد شده تنظیم می کند .
<?php $str = " شروع توسعه وب با فریمورک ---\/@@^^#$$,,// &&++***===لاراول `` \" '' !!"; class GenerateSeoFriendlyURL{ public $url = ""; function __construct(string $url , int $limit){ $this->url = $this->generateUrl($url); $this->url = $this->limitWords($this->url , $limit); } function generateUrl(string $url){ $newUrl = $url; $patterns = [ "/[`_\"'\/\\\\]{1,}/i", "/[\s+*&^%$#@=.,?!-]{2,}/i", ]; foreach($patterns as $pattern){ $newUrl = preg_replace($pattern, " " ,$newUrl); } $newUrl = trim($newUrl); $newUrl = str_replace(" " , "-" , $newUrl); $newUrl = strtolower($newUrl); return $newUrl; } function limitWords(string $url , int $limit=6){ if($limit < 2) $limit = 2; $urlList = explode("-" , $url); $urlList = array_slice($urlList , 0 , $limit); $newUrl = join("-",$urlList); return $newUrl; } function getUrl(){ return $this->url; } } $urlObject = new GenerateSeoFriendlyURL($str , 6); echo $urlObject->getUrl(); // شروع-توسعه-وب-با-فریمورک-لاراول ?>
ارسال نظر