非插件实现高效的SEO优化

王朝学院·作者佚名  2016-04-27
窄屏简体版  字體: 小  |  中  |  大  |  超大  

WordPRess有很多SEO插件来帮助进行搜索引擎优化。如果你不想使用插件,下面这个高效的代码,将使你的博客对搜索引擎更加友好。

将下面代码粘贴到你的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 .= "\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;

}

需修改一下$default_keywords 后面默认的关键字

使用方法:用下面代码:

<?php echo basic_wp_seo(); ?>

替换主题header.php模板

<title></title>

注:可能不同的主题有所区别。

文章来源:http://zmingcx.com/non-plug-in-for-efficient-seo-optimization.html

 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
© 2005- 王朝網路 版權所有 導航