首页 > 建站经验 > emlog主页分类文章页自定义设置SEO标题关键词描述方法
2018
01-27

emlog主页分类文章页自定义设置SEO标题关键词描述方法

emlog怎么设置主页分类文章页自定义的SEO标题关键词描述?因为一时头脑发热,想到去用emlog做个博客,但是在具体网站设置时候真的是碰到了大麻烦,真要吐槽一下emlog。如今emlog已经停止更新了,想想当年还用emlog做过一个博客,竟然能升到pr3,现在想想emlog除了轻快优点真的是好少。

我们在博客建立成功之后除了简要的网站设置之外,有时可能需要一些SEO设置,熟悉网站优化的朋友肯定知道基础的SEO除了title的重要性之外,最重要的就是关键词(keywords)和描述(description)了。但是我仔细研究了一晚上都没有找到能直接设置的方法,真的是麻烦死了。做网站真的是需要有基础啊,没有基础真的是难死人。接下来就来介绍一下emlog怎么自定义主页分类文章页的关键词描述的方法。

emlog首页设置SEO标题关键词描述设置方法

首先是首页,这个设置方法算是最简单的,直接可以在后台设置即可。

后台–>设置–>SEO设置–>meta信息设置

emlog主页分类文章页自定义设置SEO标题关键词描述方法 - 第1张  | 挖模板

首页title就是站点浏览器标题,首页keywords就是站点关键字,首页description就是站点浏览器描述。文章浏览器标题方案选择:文章标题-站点标题。(这里设置的不是首页,而是文章页的的标题)

emlog分类页设置SEO标题关键词描述设置方法

其次是分类页的关键词与描述设置,这个设置也算是比较好找的。随便在百度一搜就可以找到实现方法。

操作步骤:

1.下载安装emlog模板设置插件(在本站下载或在emlog官方下载),返回后台插件中心启用插件

2.在当前使用网站模板根目录下新建options.php文件,然后在文件中添加以下代码:

<?php
/*@support tpl_options*/
!defined('EMLOG_ROOT') && exit('access deined!');
$options = array(
	'catetitle' => array(
		'type' => 'text',
		'name' => '分类页面标题设置',
		'values' => array('',),
		'depend' => 'sort',
		'unsorted' => false,
		'description' => '左侧选择分类,在输入框中输入分类自定义标题。',
	),
	'catekeywords' => array(
		'type' => 'text',
		'name' => '分类页面关键词设置',
		'values' => array('',),
		'depend' => 'sort',
		'unsorted' => false,
		'description' => '左侧选择分类,在输入框中输入分类关键词。',
	),
	'catedescription' => array(
		'type' => 'text',
		'name' => '分类页面描述设置',
		'multi' => 'true',
		'values' => array('',),
		'depend' => 'sort',
		'unsorted' => false,
		'description' => '左侧选择分类,在输入框中输入分类描述。',
	),
);

如果当前主题已经启用tpl_options插件并且有options.php文件,直接在options文件中添加以下代码:

'catetitle' => array(
		'type' => 'text',
		'name' => '分类页面标题设置',
		'values' => array('',),
		'depend' => 'sort',
		'unsorted' => false,
		'description' => '左侧选择分类,在输入框中输入分类自定义标题。',
	),
	'catekeywords' => array(
		'type' => 'text',
		'name' => '分类页面关键词设置',
		'values' => array('',),
		'depend' => 'sort',
		'unsorted' => false,
		'description' => '左侧选择分类,在输入框中输入分类关键词。',
	),
	'catedescription' => array(
		'type' => 'text',
		'name' => '分类页面描述设置',
		'multi' => 'true',
		'values' => array('',),
		'depend' => 'sort',
		'unsorted' => false,
		'description' => '左侧选择分类,在输入框中输入分类描述。',
	),

3.找到当前使用主题模板的header.php文件,找到原title代码:

<title><?php echo $site_title; ?></title>

修改为:

<?php if(isset($sortName)){?>
<title><?php echo _g('catetitle.'.$sortid);?></title>
<?php }else{ ?>
<title><?php echo $site_title; ?></title>
<?php } ?>

修改完成后继续在本文件中找到关键词和描述代码:

<meta name="keywords" content="<?php echo $site_key; ?>" />
<meta name="description" content="<?php echo $site_description; ?>" />

修改为,如果当前模板没有以上代码则直接添加在<head></head>之间

<?php if($pageurl == Url::logPage()){?>
<meta name="keywords" content="<?php echo $site_key; ?>" />
<meta name="description" content="<?php echo $site_description; ?>" />
<?php }elseif(isset($sortName)){?>
<meta name="keywords" content="<?php echo _g('catekeywords.'.$sortid);?>" />
<meta name="description" content="<?php echo _g('catedescription.'.$sortid);?>" />
<?php } ?>

修改完成后保存文件并返回后台。

4.后台–>模板–>模板设置,进入当前模板设置页面

emlog主页分类文章页自定义设置SEO标题关键词描述方法 - 第2张  | 挖模板

然后选择需要设置的分类,方法分享者介绍说是下拉框,不过我这里显示的并不是,但是不影响效果。选择需要设置的栏目,然后根据提示填入自己的分类标题,分类关键词,分类描述即可。此时分类页的SEO三标签也成功的完成设置了。

emlog文章页设置SEO标题关键词描述方法

到这,就是最后一步了,也是最重要的一步。因为我遍寻百度,Google都没有找到能解决我需求的方法,虽然中间有找到蓝叶的[emlog文章页关键词和描述插件],本以为可以完美解决,但是按照操作方法安装后发现并没有什么卵用。所以决定采用曲线救国的方法,因为同时设置实在是没法实现,所以我的解决办法是:

  • 文章页关键词设置为文章标签(tag)
  • 文章页描述设置为文章摘要(expert)

虽然说这是大家都众所周知的设置,但是想要完成设置还真的挺麻烦的,在完成设置时候我遇到了三个难题。

  1. 关键词设为tag,虽然文章tag有现成的调用语句,但是如果直接使用会带出它的链接和样式,然后调用出来的就会像这样<span class=”what”><a href=”taglink”>tagname</a></span>这并不是我想要的结果,我只想要调用出来它的名字,不带任何样式跟链接。这个我通过搜索已经解决了。
  2. 描述设置为摘要(expert),这个实现方法我也找到了,但是也会出现像关键词一样的会调用出样式和链接,这个我还没有找到完美的解决方法,所以同样采用曲线救国的方法解决。算是不完美解决方法。
  3. 调用方法,因为我没有学过php语言,只是大概懂一点解决方法,所以这一点是我耗费时间最长的,不过好在我已经解决了,具体解决方法我会在下面介绍。

赘述到此结束,下面开始具体解决:

文章页SEO标题设置方法

这点在上面介绍首页SEO三标签设置的时候已经介绍了,就不赘述。想要了解请点击

文章页关键词设置方法

首先在当前使用的主题文件夹下找到module.php,添加以下代码:

<?php
function page_tag_key($blogid){
global $CACHE;
$log_cache_tags = $CACHE->readCache('logtags');
if (!empty($log_cache_tags[$blogid])){
foreach ($log_cache_tags[$blogid] as $value){
$tag .= $value['tagname'].',';
}
echo substr($tag,0,-1);
}
}
?>

添加完成后保存文件,然后使用<?php page_tag_key($logid);?>这条调用就可以实现调用文章内标签,并且不带任何样式。

这时meta文件关键词调用语句就是<meta name=”keywords” content=”<?php page_tag_key($logid);?>” />具体怎样操作下面和描述一起写。

文章页描述设置方法

这里不再是修改模板文件,而是修改emlog系统文件,具体方法如下

打开/include/module/log_model.php文件,找到如下代码(大概在124行):

'template' => $row['template'],

在该代码下添加

'excerpt' => $row['excerpt'],

这时就可以用<?php echo $excerpt; ?>调用文章描述了,然后文章页的描述调用语句就是<meta name=”description” content=”<?php echo $excerpt; ?>” />

但是这里会同样遇到跟关键词一样的问题,会调用出样式跟链接,因为我没有找到比较好的解决方法,所以解决方法是:emlog主页分类文章页自定义设置SEO标题关键词描述方法 - 第3张  | 挖模板

在编辑器下方点击高级选项,在编辑器上方选择HTML代码编辑方式,然后键入纯文本就可以了,虽然有些麻烦,但好歹也算解决问题了。

至此,调用方法已经介绍完了。

文章页关键词描述调用方法

虽然我已经实现了可以完成调用,但是由于前面我已经设置了首页跟分类页的关键词跟描述,并且使用的是php判断语法,前面使用了两个判断条件,我们要是想要再调用文章页的,就需要再加一条判断条件。一开始我一点也没办法,去求救我的php大神朋友,可是那货正忙,我只好自己去查,查到的方法是:

<?php
$t=date("H");

if ($t<"10") {
  echo "Have a good morning!";
} elseif ($t<"20") {
  echo "Have a good day!";
} else {
  echo "Have a good night!";
}
?>

我看到前面是两个条件,如果想要调用第三个判断条件只需要在后面加esle判断即可,所以一开始我是这样写的,

<?php if($pageurl == Url::logPage()){?>
<meta name="keywords" content="<?php echo $site_key; ?>" />
<meta name="description" content="<?php echo $site_description; ?>" />
<?php }elseif(isset($sortName)){?>
<meta name="keywords" content="<?php echo _g('catekeywords.'.$sortid);?>" />
<meta name="description" content="<?php echo _g('catedescription.'.$sortid);?>" />
<?php }else(isset($logid)){?>
<meta name="keywords" content="<?php page_tag_key($logid);?>" />
<meta name="description" content="<?php echo $excerpt; ?>" />
<?php } ?>

依照前面的方法,我就仿照着前面的语法写了我的第三条判断语句,结果。。。出错了。哎,没技术真的命苦啊,然后我又继续尝试,最后,WTF,原来解决方法就错在else,只需要把else修改为elseif就可以了。具体代码如下

elseif(isset($logid)){?>
<meta name="keywords" content="<?php page_tag_key($logid);?>" />
<meta name="description" content="<?php echo $excerpt; ?>" />
<?php } ?>

其实很简单,就是判断如果是文章页面,然后描述跟关键词调用上面我得到的两条调用方法。就行了。

具体修改方法:

再次打开emlog主题文件夹下的header.php,找到以下代码:

<?php if($pageurl == Url::logPage()){?>
<meta name="keywords" content="<?php echo $site_key; ?>" />
<meta name="description" content="<?php echo $site_description; ?>" />
<?php }elseif(isset($sortName)){?>
<meta name="keywords" content="<?php echo _g('catekeywords.'.$sortid);?>" />
<meta name="description" content="<?php echo _g('catedescription.'.$sortid);?>" />
<?php } ?>

修改为:

<?php if($pageurl == Url::logPage()){?>
<meta name="keywords" content="<?php echo $site_key; ?>" />
<meta name="description" content="<?php echo $site_description; ?>" />
<?php }elseif(isset($sortName)){?>
<meta name="keywords" content="<?php echo _g('catekeywords.'.$sortid);?>" />
<meta name="description" content="<?php echo _g('catedescription.'.$sortid);?>" />
<?php }elseif(isset($logid)){?>
<meta name="keywords" content="<?php page_tag_key($logid);?>" />
<meta name="description" content="<?php echo $excerpt; ?>" />
<?php } ?>

至此,emlog首页分类文章页的SEO标题关键词描述就全部完成了设置。

参阅资料:

https://www.eqifei.net/post-57.html

http://www.boke8.net/emlog-category-seo.html

http://lanyes.org/web/673.html

                     
最后编辑:
作者:编辑@挖模板
                           
本站所有文章来自网络,如有侵权请联系本站处理。wamuban@qq.com

emlog主页分类文章页自定义设置SEO标题关键词描述方法》有 1 条评论

  1. 夏日博客 说:

    emlog是用过一段时间。

留下一个回复

你的email不会被公开。