post_excerpt) { $description = $post->post_excerpt; } else { $description = get_the_excerpt(); } $keywords = ""; $tags = wp_get_post_tags($post->ID); foreach ($tags as $tag ) { $keywords = $keywords . $tag->name . ","; } } elseif (is_category()) { $keywords = $description = $SEO_head = ''; if( is_category() || is_tag() ){ $term = get_queried_object(); // 获取关键词 $term_key = get_term_meta($term->term_id , 'term_keywords',true); if( $term_key ){ $keywords = $term_key; } // 获取描述 $term_desc = get_term_meta($term->term_id , 'term_description',true); if( !$term_desc ){ $term_desc = $term->description; } if( !empty($term_desc) ){ $description = str_replace(PHP_EOL,'',$term_desc); } } echo $SEO_head; } elseif (is_tag()) { $description = single_tag_title('', false); $keywords = single_tag_title('', false); } ?> 博客emlog绑定多域名的问题 - 龙哥 (Long.Ge)
Position: Home 网站源码 article

博客emlog绑定多域名的问题

网站源码 0
5378 0

有些bloger经常将多个域名绑在同一个空间,其实对博客程序而言,在大多数正常情况下,非主域名只能访问首页,内页的链接仍然是主域名的。那么,对于那些手里面有许多域名,又舍不得丢的bloger,是不是就没有办法了呢?

办法肯定是有的,而且不只一种。前两天和一个用WP的博友交流,他说在WP里面就有支持多域名的代码,而且他在Emlog上实现过。于是我向他要了这段代码,居然只有2行,于是对那些高手不禁心向往之。

好了,现在谈正题。对于一空间多域名的问题,我目前知道的方法有这么两个:

方法一:设定一个主域名,然后将其它域名全部交给提供免费域名解析服务的网站来处理(这种网站很多,我用的是 namecheap.com),解析的时候全部用301转到主域名下(包括@和www 2条记录)。你甚至可以直接在这里把主域名的 www.xxx.com 也用301直接转到 xxx.com,省去修改 .htaccess 文件的麻烦;

这是我推荐的方法,一是这样做不会影响到主域名的权重,二是这种方法只需在空间绑上主域名就行了。

方法二:在 option.php(经过实践,其实添加在config.php也行的,而且方添加方法可以参照https://long.ge/3207.html) 文件中添加2行代码:

  1. $siteurl = 'http://'.$_SERVER['HTTP_HOST'].'/';
  2. define('BLOG_URL', $siteurl);

复制代码

这样就可以支持多域名了。但是有几点要注意,一是这种方法只支持安装到根目录的博客,不支持安装到目录的情况;二是这种方法所有的域名会平分权重,不利于主域名的收录;三是需要在空间绑上所有的域名。

有些Emer可能还会申请一些免费空间,然后用一个跳转页面转到主域名,这种方法最不可取,除了会和主域名平分权重之外,还有可能被认为在作弊,影响到主域名的收录。
………………………………………………………………………………………

备注:

博友给我代码的时候提醒说,如将博客安装在子目录不能使用上述代码,否则博客将无法正常使用,但经过测试,发现并没有问题。比如你将博客安装到网站的blog目录下面,则上述代码改为:

$siteurl = 'http://'.$_SERVER['HTTP_HOST'].'/blog/';
define('BLOG_URL', $siteurl);

只要记住,无论安装到哪里,都必须以“/”结尾,否则就真的无法正常使用了。

There are 109 网站源码 actresseses!