欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

原创asp.net动态添加网站seo的标题、关键词、描述的方法

程序员文章站 2022-04-14 10:13:29
曾经用开发的网站一直未能完美的实现修改网站的关键字和描述,一直没让他显示在,网站标题,关键词,描述有利于搜索引擎的搜索。于是就想试试用.net怎么实现,花了一个下午的时间总算完美的解决了该问题。 &...
曾经用开发的网站一直未能完美的实现修改网站的关键字和描述,一直没让他显示在,网站标题,关键词,描述有利于搜索引擎的搜索。于是就想试试用.net怎么实现,花了一个下午的时间总算完美的解决了该问题。

 

不用时很简单就实现了该功能:

 

 

[csharp]  

string title;  

            string keywords = "关键字";  

            string description = "描述";  

            title = "标题";  

           page.title = title;  

            //动态添加页面关键字  

            htmlmeta hm = new htmlmeta();  

            hm.name = "keywords";  

            hm.content = keywords;  

            page.header.controls.add(hm);  

            //动态添加页面描述  

            htmlmeta ms = new htmlmeta();  

            ms.name = "ms";  

            ms.content = description;  

            page.header.controls.add(ms);  

 

简单实现了该功能后,再深入一点从数据库中获取并修改他:用dataview把数据显示在页面,dv[i]["j"]表示把第i行第j列的数据显示出来。

 

[csharp] 

//查找的方法  

        public void query()  

        {  

            string sql = "select * from sysconfig";  

            dataview dv = jdbc.query(sql);  

            title.text = dv[0]["title"].tostring();  

            keywords.text = dv[0]["keywords"].tostring();  

            description.text = dv[0]["description"].tostring();  

            page.title = title.text;  

            string gjz = keywords.text;  

            string ms = description.text;  

            //动态添加页面关键字  

            htmlmeta hm = new htmlmeta();  

            hm.name = "keywords";  

            hm.content = gjz;  

            page.header.controls.add(hm);  

            //动态添加页面描述  

            htmlmeta hmms = new htmlmeta();  

            hmms.name = "ms";  

            hmms.content = ms;  

            page.header.controls.add(hmms);  

         }  

 

button方法:

 

[csharp]  

protected void button1_click(object sender, eventargs e)  

        {  

            session["title"] = title.text;  

            session["keywords"] = keywords.text;  

            session["description"] = description.text;  

            string sql = string.empty;  

            if (session["title"].tostring() == "")  

            {  

                sql = "insert into sysconfig(title,keywords,description)values('" + session["title"] + "','" + session["keywords"] + "','" + session["description"] + "')";  

            }  

            else  

            {  

                sql = "update sysconfig set title='" + session["title"] + "',keywords='" + session["keywords"] + "',description='" + session["description"] + "' where configid=1;";  

            }  

            jdbc.connection(sql);  

            string bt = session["title"].tostring();  

            string gjz = session["keywords"].tostring();  

            string ms = session["description"].tostring();  

            page.title = bt;  

            //动态添加页面关键字  

            htmlmeta hm = new htmlmeta();  

            hm.name = "keywords";  

            hm.content = gjz;  

            page.header.controls.add(hm);  

            //动态添加页面描述  

            htmlmeta hmms = new htmlmeta();  

            hmms.name = "ms";  

            hmms.content = ms;  

            page.header.controls.add(hmms);  

        }  

 

page_load方法中就一句话:

 

[csharp]  

query();  

 

前端代码:

 

[csharp] 

<%@ page language="c#" autoeventwireup="true" codebehind="test.aspx.cs" inherits="webdemo.webroot.test" %>  

  

<!doctype html public "-//w3c//dtd xhtml 1.0 transitional//en" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd">  

  

<html xmlns="http://www.w3.org/1999/xhtml">  

<head runat="server">  

    <title></title>  

</head>  

<body>  

    <form id="form1" runat="server">  

    <p>  

        <asp:label id="label1" runat="server" text="标题:"></asp:label>  

        <asp:textbox id="title" runat="server"></asp:textbox><br />  

        <asp:label id="label2" runat="server" text="网站关键字:"></asp:label>  

        <asp:textbox id="keywords" runat="server" ></asp:textbox><br />  

        <asp:label id="label3" runat="server" text="网站描述:"></asp:label>  

        <asp:textbox id="description" runat="server"></asp:textbox><br />  

        <asp:button id="button1" runat="server" text="button" onclick="button1_click" />  

    </p>  

    </form>  

</body>  

</html>  

 

效果图:

 

 

 

页面源文件:

 

 

 

到此依然没有完美的实现,还不能修改数据。sql语句没写错,为什么还会这样?就是因为加载页面一直实行query()方法,update方法修改完后又被query()方法还原了。有什么方法能让query()方法只是在页面加载时只实行一次呢?用ispostback

 

[csharp] 

if(ispostback)  

            {  

                return;  

            }  

query();  

 

 

 

申明:本文为作者原创文章,请珍重作者的劳动成果,转载必须声明!原文网址:http://blog.csdn.net/qianquan003

 

以下代码来自网上资料:

 

网站建设中,网站的标题(title)、描述(description)、关键词(keywords)是非常重要的,尤其是要做的企业站,更是要注意其标题和描述,因为现在大多的搜索引擎的排名机制都非常重视这一点。相信对从业人员来说以下的title、description、keywords标签肯定不陌生:

 

1,首先设置网站的title、description、keywords标签的变量。

 

string strtitle;

 

string strseokey;

 

string strseodescription;

 

2,然后给变量赋值。

 

strtitle = "企业网站管理title";

 

strseokey = "企业网站管理系统keyword";

 

strseodescription = "企业网站管理系统description";

 

 

 

3,接着在c#的后台事件代码中添加:

 

        page.title = strtitle;

 

 

 

        htmlmeta desc = new htmlmeta();

 

        desc.name = "description";

 

        desc.content = strseodescription;

 

        page.header.controls.add(desc);

 

 

 

        //动态添加页面keyword

 

        htmlmeta keywords = new htmlmeta();

 

        keywords.name = "keywords";

 

        keywords.content = strseokey;

 

        page.header.controls.add(keywords);

 

 

 

最后把上面的代码直接放置在page_load这个事件中,既可运行查看效果了。当然实际操作中可以根据自己需求进行适当修改。