WordPress hack: Efficient SEO without a plugin

Let’s start by pasting the code below into your functions.php file:

 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 .= "\t\t" . '<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 .=  "\t\t" . '<meta name="robots" content="noindex,follow">' . "\n"; 		} else { 			$  output .=  "\t\t" . '<meta name="robots" content="index,follow">' . "\n"; 		} 	} else if (is_home() || is_singular()) { 		$  output .=  "\t\t" . '<meta name="robots" content="index,follow">' . "\n"; 	} else { 		$  output .= "\t\t" . '<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 .= "\t\t" . '<title>' . esc_attr($  seo_title . $  page_number) . '</title>' . "\n";  	return $  output; } 

Once done, replace the $ default_keywords (line 3) with your own and add the following code into your header.php file:

 <?php echo basic_wp_seo(); ?> 

Then, don’t forget to check the source of your pages and fine tune the code if needed.

Big thanks to Jeff Starr for this amazing code!


WpRecipes.com

Web Design

EfficienthackpluginwithoutWordPress

Leave a Reply

Your email address will not be published. Required fields are marked *