ساخت url سئو شده با PHP ( ساخت URL با عنوان )

ساخت 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();

// شروع-توسعه-وب-با-فریمورک-لاراول

?>

ارسال نظر

جهت استفاده از کد حتما از تگ pre استفاده نمایید .

contact us