(回到Blog入口)

Movable Type 归档

2007年04月03日

为MovableType增加 Sitemaps

Google Sitemaps 的作用是让Google快速收录。这里介绍两个MovableType的 Sitemaps 模版:

简洁版:




<$MTBlogURL encode_xml="1"$>
1.0



<$MTEntryPermalink encode_xml="1"$>
<$MTEntryModifiedDate utc="1" format="%Y-%m-%dT%H:%M:%SZ"$>


包含类别:




<$MTBlogURL encode_xml="1"$>
0.8



<$MTCategoryArchiveLink encode_xml="1"$>
0.5




<$MTEntryPermalink encode_xml="1"$>

<$MTEntryModifiedDate utc="1" format="%Y-%m-%dT%H:%M:%SZ"$>

0.3


增加了分类和Tags 伪静态链接的Sitemap ,使用xml-sitemaps.com生成的Google Sitemap文件也包含Tag的链接,或许增加TAGS可以加快Google的收录速度及数量。



<$MTBlogURL encode_xml="1"$>
1.0



<$MTEntryPermalink encode_xml="1"$>
<$MTEntryModifiedDate utc="1" format="%Y-%m-%dT%H:%M:%S+00:00"$>



<$MTBlogURL encode_xml="1"$>archives.html
1.0




<$MTArchiveLink encode_xml="1"$>





<$MTCategoryArchiveLink encode_xml="1"$>




<$MTTagSearchLink$>



制作方法:在MT的索引模版中建立个模版 输出为“sitemap.xml”内容用上面当中的一个,即模板名称:(随意)Sitemaps
输出文件:sitemap.xml 。而后重建。

2007年04月04日

终于还是抛弃了Tattertools,投向Movable Type的怀抱

终于狠下心抛弃了Tattertools这款韩国博客程序,抛弃以前写的一切内容,义无反顾的投入了MT的怀抱……
不记得我是从几时开始写博客的,博客程序倒是换了好多种,每次都是连数据一起抛弃……
最开始是破废墟博客程序,也不记得自己是怎么找到这个程序的,这个地方还不是作者的站点,是个改造该程序的独立博客,这个程序现在依然建在,作者是猪飞飞,也亏我现在还记得……
之后换成了LBS,该作者是遨游的开发人员,完全是凭借兴趣爱好开发了这个程序,数据库的结构还是借了另外一款博客程序的,不过凭借出众的安全性,基本完善的功能,超多的模板,普及的ASP运行环境,现在还是很流行…… 不过作者现在应该忙着开发遨游2.0,这个程序已经没有出新版本了,只不过2月份出了个安全补丁,不过爱好者还是众多,呵呵 我还保留了当时的数据;这款博客程序模板设计还是挺简单的,功能也都完全够用,还是挺不错
可惜我没有顶住来自韩国D博客程序Tattertools的诱惑,后台丰富的AJAX运用,前台简单的模板设计,依托韩国人一流的设计功力,PHP平台的吸引,凑巧我又买了Freebsd虚拟主机,刚刚好可以跑这款对运行环境要求挺严格的程序,哈,而后有出了多用户功能,还架设了给朋友使用,这一用就是一年多,从0.96版本,到现在的1.1.2.1版本,不过缺点还是很明显,对垃圾Trackback的抵御能力几乎是0,每个月要清理上W条的垃圾信息也是很恼火的事情…… 再有就是运行速度比较慢,也没有生成静态页面的功能,只有个rewrite方式,不过挺消耗资源的,曾经因为这个程序让我把服务器搞挂点…… 让我决心抛弃它的主要原因还是对垃圾Trackback抵御能力上,设置过滤基本是没效果的,一点效果都没有,真是让我对它失去信心,连博客都懒得更新了……
转向Movable Type前,我还安装测试了国外风靡的Wordpress2.1,用的是21andy的修改版本,据说优化了很多地方,也内置了很多实用插件,而且在用过Tattertools众多的花哨模板后,这款修改版的模板很对我胃口,清爽的很,可惜啊可惜,WP的运行速度比TT还要慢的多,让人抓狂……而且也没有生成静态页面的功能,只有rewrite方式,只好抛弃它了
鉴于国内电信网通访问的问题,我毅然决定买国外的虚拟空间,发现一年只要450RMB,马上行动就买了BlueHost的虚拟主机,国内访问速度还可以,电信网通访问都OK,连学校宿舍这样垃圾的网络访问起来居然可以,上传FTP速度还超过50K,实在是令人惊奇了~这款虚拟主机支持CGI,早就仰慕MT很久了,苦于国内目前难找支持CGI的虚拟主机,一直没机会用上,这次用起来感觉很好,清爽的后台,容易设计的模板,模板标签应用方面居然跟DeDeCMS一样,太过瘾了,这样设计模板应该很顺手,不过想不到居然MT的模板标签去哪里找…… 也晕了一阵…… 一阵狂找MT插件,发现中文的MT资源也还真是不多,多数是英文的,模板基本都是日本的…… 慢慢完善好了…… 支持静态页面生成,连RSS样式都可以自己定义,呵呵,不错,强大。把MT称为强大的出版系统看来是没错,也支持多人写作,也是多用户博客系统,个人使用是免费的,不过没有服务,文档很丰富就是了,可惜英文的多,商业用途的MT还挺多,都漂亮的很,哈,不知道什么时候我有能力对MT进行改造~~
希望这次我能一直坚持用MT,别再换了~~ 自己折腾自己也是很痛苦的……

2007年04月21日

Blog首页不显示全文内容,只显示概述

1. 进入管理介面
2. 点击左边的模板
3. 选择主索引 index.html
寻找:
<$MTEntryBody$>

改成:
<$MTEntryExcerpt convert_breaks="1"$>

最后在文章的文摘部分把文章的内容copy一些概述过来就行
copy的内容将显示在首页,所以尽量精简
最后别忘了加个看全文的链接,方便人家看全文


2007年05月07日

Wordpress转换到Movable Type的程序

李华伟部落看到的这篇文章,虽然我自己不用wordpress,不过这个东西还是挺多人用的~

复制一份备案~

具体步骤如下:保存以下代码,存为PHP文件.

<?
    header('Content-type: text/plain');
    $hostname="hostname";
    $username = "username";
    $password = "password";
    $dbname = "dbname";
    $db_con = mysql_connect($hostname,$username, $password) or die("Connetion to database failed!");
    mysql_select_db($dbname);
    mysql_query("SET NAMES 'utf8'");
    $query = "SELECT 
    `wp_posts`.`post_date`,
    `wp_posts`.`post_content`,
    `wp_posts`.`post_title`,
    `wp_posts`.`post_name`,
    `wp_users`.`user_nicename`,
    `wp_post2cat`.`category_id`,
    `wp_categories`.`cat_name`, 
    `wp_comments`.`comment_author`,
    `wp_comments`.`comment_content`,
    `wp_comments`.`comment_author_email`,
    `wp_comments`.`comment_author_url`,
    `wp_comments`.`comment_author_IP`,
    `wp_comments`.`comment_date`
    FROM
    `wp_comments`
    RIGHT OUTER JOIN `wp_posts` ON (`wp_comments`.`comment_post_ID` = `wp_posts`.`ID`)
    LEFT OUTER JOIN `wp_users` ON (`wp_posts`.`post_author` = `wp_users`.`ID`)
    INNER  JOIN  `wp_post2cat`  ON (  `wp_posts`.`ID`  =  `wp_post2cat`.`post_ID`  ) 
    LEFT  OUTER  JOIN  `wp_categories`  ON (  `wp_categories`.`cat_ID`  =  `wp_post2cat`.`category_ID`  ) 
    ";
    $result = mysql_query($query);
    if ($result) {
        $numOfRows = mysql_num_rows ($result);
        for ($i = 0; $i < $numOfRows; $i++) {
            if ($prev_entry == mysql_result($result, $i, "post_date")) {
                print_comment($result, $i);
            } else {        
                print_post($result, $i);
                $prev_entry = mysql_result($result, $i, "post_date");
                if (mysql_result($result, $i, "comment_content") != "") {
                    #echo ("-----\n");
                    print_comment($result, $i);
                }
            }
        }
    }
    mysql_close ();
    function print_post($result, $i) {
        echo ("--------\n");
            echo ("AUTHOR: ").stripslashes(mysql_result($result, $i, "user_nicename"))."\n";
            echo ("TITLE: ").stripslashes(mysql_result($result, $i, "post_title"))."\n";
            echo ("STATUS: Publish\n");
            echo ("ALLOW COMMENTS: 2\n");
            //echo ("CONVERT BREAKS: markdown\n");
            echo ("ALLOW PINGS: 0\n");
            echo ("CATEGORY: ").stripslashes(mysql_result($result, $i, "cat_name"))."\n";
            echo ("DATE: ").date("m/d/Y h:m:s A",(strtotime(mysql_result($result, $i, "post_date"))))."\n";
            echo ("-----\n");
            echo ("KEYWORDS:\n");
            echo stripslashes(mysql_result($result, $i, "post_name"))."\n";
            echo ("-----\n");
            echo ("BODY:\n");
            echo stripslashes(str_replace("<br />", "", mysql_result($result, $i, "post_content")))."\n";
            echo ("-----\n");
    }


function print_comment($result, $i) {
$text=stripslashes(str_replace("<br />", "", mysql_result($result, $i, "comment_content")))."\n";
if (0 === strpos($text,'<trackback />')) {
preg_match ("!<trackback /><strong>(.+)</strong>\n(.+)!",$text,$matches);
echo ("PING:\n");
echo ("BLOG NAME: ").stripslashes(mysql_result($result, $i, "comment_author"))."\n";
echo ("URL: ").stripslashes(mysql_result($result, $i, "comment_author_url"))."\n";
echo ("TITLE: $matches[1]\n");
$text = "$matches[2]\n";
} else {
echo ("COMMENT:\n");
echo ("AUTHOR: ").stripslashes(mysql_result($result, $i, "comment_author"))."\n";
echo ("EMAIL: ").stripslashes(mysql_result($result, $i, "comment_author_email"))."\n";
echo ("URL: ").stripslashes(mysql_result($result, $i, "comment_author_url"))."\n";
}
echo ("IP: ").stripslashes(mysql_result($result, $i, "comment_author_ip"))."\n";
echo ("DATE: ").date("m/d/Y h:m:s A",(strtotime(mysql_result($result, $i, "post_date"))))."\n";
echo $text;
echo ("-----\n");
}
?>

然后上传文件到服务器,更改下列参数与Wordpress相同:

$hostname="hostname";$username = "username"; $password = "password";$dbname = "dbname";

1. 根据mysql数据库修改mysql_query("SET NAMES 'utf8'");
2. 运行上传的php文件,将结果另存为
3. 进MT后台控制台,import,搞定!

2007年07月27日

如何使用live writer发布MT日志

第一次用Windows Live Writer 来远程发布日志,一开始还真有点傻眼

不知道怎么下手,连登陆都提示登陆不到……

最后百度了才找到答案~

原来设置时候使用的密码不是MT中我们登陆时候使用的密码~

而是需要使用在MT后台中个人资料中密码一栏里面设置的Web Services 密码……

真是有点郁闷~

第一次发…… 好多东西没找到~  呵呵  不过应该比自己登陆MT后台来发布要速度快一点~吧

关于 Movable Type

此页面包含了发表于 Hugo.Leen's 生活流水账 的 Movable Type 所有日记的归档,它们从老到新列出。

前一个分类 Internet

后一个分类 Music

更多信息可在 主索引 页和 归档 页看到。

Creative Commons License
此 Blog 中的日记遵循以下授权 Creative Commons(创作共用)授权.

Powered byMovable Type