海运的博客

Typecho代码高亮Codebox转SyntaxHighlighter

发布时间:November 9, 2014 // 分类:PHP,Typecho // 1 Comment

由于SQL正则替换不支持反向引用使用PHP读取替换并重新写入数据库:

<?php
$db = 'typecho';
$user = 'root';
$pass = 'password';
try { 
  $dbo = new PDO('mysql:host=localhost;dbname='.$db, $user, $pass, array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES 'utf8';"));
} catch (PDOException $e) { 
  $error = $e->getMessage();
  die("PDO Execute Error : ".$error."\n");       
}
$dbo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

$sql = "SELECT cid,text FROM typecho_contents";
$stmt = $dbo->query($sql);
//$result = $stmt->fetch(PDO::FETCH_ASSOC);
//var_dump($result);
while (list($cid,$text)=$stmt->fetch(PDO::FETCH_NUM)){
  echo $cid."\n";
  $pattern = "/<code\s+?lang=[\'\"](\w+?)[\'\"]>/i";
  //preg_match($pattern, $text, $matches);
  //print_r($matches);
  $text = preg_replace($pattern, "```\$1", $text);
  $text = preg_replace('/<code>/', "```", $text);
  $text = preg_replace('/<\/code>/', "```", $text);
  $text = preg_replace('/^/', '<!--markdown-->', $text);
  $st = $dbo->prepare("UPDATE typecho_contents set `text` = ? where cid = ?");
  $st->bindParam(1, $text);
  $st->bindParam(2, $cid);
  $st->execute();
}

Typecho网站更改域名

发布时间:July 27, 2013 // 分类:Typecho // No Comments

更改域名后要修改数据库中网站URL,不然会提示500错误:

UPDATE `db`.`typecho_options` SET `value` = 'http://www.haiyun.me' WHERE `typecho_options`.`name` = 'siteUrl' AND `typecho_options`.`user` =0;

全局替换数据库的的老域名为新域名:

UPDATE db.typecho_contents SET text = replace(text, 'blog.www.haiyun.me','www.haiyun.me');
分类
最新文章
最近回复
  • ccc: 可以提供易调用openssl常用函数吗?
  • 夜未央: 在centos7 下面 貌似转换不了。有人遇到过么????
  • brian: 博主你好,请教一个问题。我使用fprobe进行将交换机流量转换成netflow时是没有问题的,...
  • 吴昊: 学习了,感谢博主分享
  • linhua: 只需配置 服务端 的接收端口随机化就行了, 发送端口 因为 连接追踪(conntrack)的缘...
  • Realm: 博主你好,按照你的教程设置了IP转发及SNAT:echo 1 > /proc/sys/net/...
  • Roki: 大神, 为什么我在make clean 就出错了呢 ?你能帮我看看吗 。。。474495758...
  • Duuge: 遇到相同的问题,但未能解决,请求帮助。1、遇到的问题:/target-i386_i486_uC...
  • carlo: 大哥,我觉得你的技术好牛逼!能加你QQ吗
  • lebron: Unknown package 'lrzsz'.Collected errors:* opkg...
页面执行耗时:0.0419秒。-->