zoukankan      html  css  js  c++  java
  • discuz 门户功能增加自定义keywords字段

    discuz的门户的“发布文章”功能中,没有自动添加keywords字段,结果在文章页面中的meta的keywords中只显示标题,这样对于seo及其不利,今天整理了添加keywords字段方法。

    一、首先在数据中找到"XX_portal_article_title"表,XX是表的前缀,这个因人而异,是在安装discuz时设置的,在这个表中增加一个字段"diy_keywords",类型varchar(64),默认为空。

    二、在项目的目录“/template/default/portal”找到模板portalcp_article.htm,打开模板后,找到如下这个位置,并添加html标签

    添加html标签后,在发布文章的页面,我们可以看到如下显示:

    三、模板中的表单字段添加完毕后,我们需要做入库操作了。在项目目录的“/source/include/portalcp”下找到portalcp_article.php,在文件的中找到$setarr数组,增加一个变量如下图,增加这个变量后,发文和编辑文章的功能中diy_keywrods都能正常入库

    四、以上操作完成后,通过测试,diy_keyword可以正常入库

    五、接下来就是如何让发布后的文章在meta的keywords中如何显示刚才添加的diy_keyword,打开项目目录“/template/default/common”的header_common.htm,

    在meta的keyword上进行修改:

    <meta name="keywords" content="{if !empty($article[diy_keyword])}{echo dhtmlspecialchars($article[diy_keyword])}{elseif !empty($metakeywords)}{echo dhtmlspecialchars($metakeywords)}{/if}" />
    

    由于discuz的head是公用的一个模板,所以为了保持频道列表也能正常显示后台设置的keywod,我只增加了一个条件判断,不影响频道列表的keyword设置。

  • 相关阅读:
    java垃圾回收机制
    mysql的find_in_set函数操作
    mysql中常见的sql语句语法书写操作
    如何破坏双亲委派原则
    mysql中临时表的创建
    spring当中的事务处理
    restTemplate调用操作出现乱码
    mysql中的any_value的基本使用操作
    DTD与XSD的区别
    idea的插件
  • 原文地址:https://www.cnblogs.com/daly2008/p/3707283.html
Copyright © 2011-2022 走看看