国外设计欣赏网站 - DOOOOR.com

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,微信登陆

搜索

[Drupal教程] 如何为Drupal添加简单的SEO META标签[title keyword]

[复制链接]
发表于 6-13-2013 20:46 | 显示全部楼层 |阅读模式
Drupal 做为优秀的世界级开源 CMS 建站系统,自然有很多开发者贡献与 SEO 相关的模块插件扩展例如:用来批量自定义 URL 的PathAuto 模块和制作 SiteMap 站点地图的 xmlSiteMap 模块当然还有就是用于 keywords description 等等位于页面 HEAD 标签内一些 META 标记的 NodeWords 模块等等,但我个人通常对于 20 行以下代码能够实现的功能不大愿意使用第三方模块,所以这里提供一些 Drupal 原生代码以实现在网页的 HEAD 标签内添加一些对 SEO 有利的 META 标签甚至 TITLE 标签等等……/ L/ h$ |  `% _4 `4 f
示例将仅仅针对 NODE 文章节点页面做 SEO 优化演示,其他页面大家可以以此类推,具体需要将以下代码放置于当前使用主题模板的(node.tpl.php)文件中:
* j- r4 W9 s9 `6 ?; {* nif($page != 0){                //首先判断是否为节点单页而非文章列表页;        $keys = $info= NULL;        $info = substr(filter_xss($node->content['body']['#value'], array()), 0, 240);                //过滤节点内容部分的特殊字符并截取前 240 个字符做为摘要部分;        foreach($node->taxonomy as $term){ $keys .= $term->name; }                //遍历节点的术语标签并存入数组备用;        drupal_set_html_head('<meta name="keywords" content="'.$keys.'">');        drupal_set_html_head('<meta name="description" content="'.$info.'">');                //利用 Drupal 函数将 html 代码加入页面 head 标签;}示例中直接使用术语表 taxonomy 中的术语标签 term 做为网页的 keywords 页面关键字,然后使用节点 body 部分的前 240 个文本字符做为 description 页面摘要部分,当然你可以根据具体情况自行调整,如果你是 SEO 控的话大可以把节点的 log 字段好好利用起来做为摘要部分自行录入,也可以单独创建新的 CCK 专门用于 SEO 都是可以的,只是在拾取字段的时候调整代码即可。
5 O' f6 s, x4 {, S/ i, X9 i. D6 r3 J9 f, S8 ?
推荐阅读使用的几个函数:$ @. x0 L0 Y- i" ^3 M
drupal_set_html_head:用于在当前页面的 HEAD 标签内添加 HTML 代码;
0 ~0 g- ]& B$ O3 @' j* |% D. Cdrupal_set_title:用于修改当前页面的 title 标签;6 Q$ A; M" N9 k" j' n
drupal_set_breadcrumb:用于修改当前页面的面包屑数组;
2 T2 C1 w  e0 g% v  R; I4 P: a  H$ I' c3 [
这里主要想说明的是 Drupal 的很多函数都是可以在主题模板和模块插件中共用的,而且诸如 drupal_set_html_head 等等函数不仅仅在模板的 page.tpl.php 中管用在其他有效的 tpl 文件中也都是可以使用的,记得我刚刚接触 Drupal 的时候一直苦恼与如何在节点模板区域控制整个页面的 title 标题和 breadcrumb 面包屑直到后来研习 Drupal 的模板渲染引擎机制才恍然大悟……' X# w% m' H3 W1 Z

5 _: Y. a3 x% _5 {* X本文选自:http://5d9jd1.d238.xzdswl.com/cms/drupal/2253.html,谢谢!
3 t* G* K6 V9 E. z4 \) \  n, A  `* n3 h. Q

|2011-2026-版权声明|平台(网站)公约|DOOOOR 设计网 ( 吉ICP备2022003869号 )

GMT+8, 3-21-2025 02:11 , Processed in 1.012530 second(s), 221 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表