سئوی کارآمد وردپرس بدون افزونه

در این پست یه کد عالی براتون آماده کردم که کار خیلی از دوستان رو راحت میکنه و براحتی میتونن کانفیگ سئوی وردپرس بدون افزونه رو انجام بدن بدون اینکه کار خاصی انجام بدن یا افزونه خاصی نصب کنن و با ۲ تا کپی پیس میتونید سئوی وردپرس رو انجام بدید.

نصب زیاد افزونه وردپرس رو شلوغ میکنه و شاید هم موجب کم شدن سرعت وردپرس شودو اصلا ما توصیه نمیکنیم که برای هر کاری از افزونه استفاده کنید.برای کانفیگ سئوی وردپرس فقط کافیه که کد زیر رو درون فایل Functions.php قرار بدید :

function basic_wp_seo() {
	global $page, $paged, $post;
	$default_keywords = 'wordpress, plugins, themes, design, dev, development, security, htaccess, apache, php, sql, html, css, jquery, javascript, tutorials'; // customize
	$output = '';

	// description
	$seo_desc = get_post_meta($post->ID, 'mm_seo_desc', true);
	$description = get_bloginfo('description', 'display');
	$pagedata = get_post($post->ID);
	if (is_singular()) {
		if (!empty($seo_desc)) {
			$content = $seo_desc;
		} else if (!empty($pagedata)) {
			$content = apply_filters('the_excerpt_rss', $pagedata->post_content);
			$content = substr(trim(strip_tags($content)), 0, 155);
			$content = preg_replace('#n#', ' ', $content);
			$content = preg_replace('#s{2,}#', ' ', $content);
			$content = trim($content);
		} 
	} else {
		$content = $description;	
	}
	$output .= '<meta name="description" content="' . esc_attr($content) . '">' . "n";

	// keywords
	$keys = get_post_meta($post->ID, 'mm_seo_keywords', true);
	$cats = get_the_category();
	$tags = get_the_tags();
	if (empty($keys)) {
		if (!empty($cats)) foreach($cats as $cat) $keys .= $cat->name . ', ';
		if (!empty($tags)) foreach($tags as $tag) $keys .= $tag->name . ', ';
		$keys .= $default_keywords;
	}
	$output .= "tt" . '<meta name="keywords" content="' . esc_attr($keys) . '">' . "n";

	// robots
	if (is_category() || is_tag()) {
		$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
		if ($paged > 1) {
			$output .=  "tt" . '<meta name="robots" content="noindex,follow">' . "n";
		} else {
			$output .=  "tt" . '<meta name="robots" content="index,follow">' . "n";
		}
	} else if (is_home() || is_singular()) {
		$output .=  "tt" . '<meta name="robots" content="index,follow">' . "n";
	} else {
		$output .= "tt" . '<meta name="robots" content="noindex,follow">' . "n";
	}

	// title
	$title_custom = get_post_meta($post->ID, 'mm_seo_title', true);
	$url = ltrim(esc_url($_SERVER['REQUEST_URI']), '/');
	$name = get_bloginfo('name', 'display');
	$title = trim(wp_title('', false));
	$cat = single_cat_title('', false);
	$tag = single_tag_title('', false);
	$search = get_search_query();

	if (!empty($title_custom)) $title = $title_custom;
	if ($paged >= 2 || $page >= 2) $page_number = ' | ' . sprintf('Page %s', max($paged, $page));
	else $page_number = '';

	if (is_home() || is_front_page()) $seo_title = $name . ' | ' . $description;
	elseif (is_singular())            $seo_title = $title . ' | ' . $name;
	elseif (is_tag())                 $seo_title = 'Tag Archive: ' . $tag . ' | ' . $name;
	elseif (is_category())            $seo_title = 'Category Archive: ' . $cat . ' | ' . $name;
	elseif (is_archive())             $seo_title = 'Archive: ' . $title . ' | ' . $name;
	elseif (is_search())              $seo_title = 'Search: ' . $search . ' | ' . $name;
	elseif (is_404())                 $seo_title = '404 - Not Found: ' . $url . ' | ' . $name;
	else                              $seo_title = $name . ' | ' . $description;

	$output .= "tt" . '<title>' . esc_attr($seo_title . $page_number) . '</title>' . "n";

	return $output;
}

برای وارد کردن کلمات کلیدی سایت در خط سوم $default_keywords کلمات رو وارد کنید.

در مرحله بعدی باید کد بالایی رو فراخوانی کنیم.برای فراخوانی کد باید تابع زیر رو درون فایل header.php یعنی درون تگ <head> قرار بدید :

<?php echo basic_wp_seo(); ?>

خب مار تمام شد و الان میتونید از سایت یه page source بگیرید و تغییرات رو مشاهده بفرمایید.

مطالب مرتبط

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *