首页
微语
统计
友链
留言
memos
圈子
图床
推荐
相册
网站监控
VPS监控
Search
1
实现typecho微信时光机功能的图文教程
45,564 阅读
2
为Typecho添加webp解析
43,230 阅读
3
emlog数据成功迁移到typecho
26,856 阅读
4
Memos备忘录,记录瞬间想法
25,932 阅读
5
Jasmine - 简约、美观的博客主题
24,587 阅读
手机达人
免费资源
电脑网络
娱乐休闲
网站建设
威言威语
Typecho
Emlog
WordPress
服务器
主题
插件
排行榜    
登录
/
注册
Search
标签搜索
wordpress
发布
插件
免费
教程
typecho
EMlog
PHP
代码
CSS
华为
图片
代码修改
安装
评论
手机
诺基亚
微信
文章
智能
Chen'mo
累计撰写
1,266
篇文章
累计收到
375
条评论
首页
栏目
手机达人
免费资源
电脑网络
娱乐休闲
网站建设
威言威语
Typecho
Emlog
WordPress
服务器
主题
插件
页面
微语
统计
友链
留言
memos
推荐
相册
网站监控
VPS监控
搜索到
18
篇与
的结果
2022-10-12
Typecho一些魔改代码
侧栏文章增加排列序号{collapse}{collapse-item label="侧栏文章增加排列序号" open}<?php $i = 1; ?> <?php while($post->next()): ?> <li><span class="label label-<?php echo $i; ?>"><?php echo $i; ?></span><a href="<?php $post->permalink(); ?>"><?php $post->title(); ?></a></li> <?php $i++; ?> <?php endwhile; ?>{/collapse-item}{collapse-item label="各种判断"}<?php if($this->is('index')):?> 首页 <?php if($this->is('category')):?> 分类 <?php if($this->is('category', 'category1')):?> 独立分类 <?php if($this->category == "help"): ?> 首页判断文章所在分类 <?php if($this->is('page')):?> 页面 <?php if($this->is('page', 'page1')):?> 独立页面 <?php if($this->is('post')):?> 内容页 <?php if ($pages->slug != 'page1'): ?> 导航不显示某页面 <?php if (($pages->slug != 'page1') && ($pages->slug != 'page2')): ?> 导航不显示某两个页面 <?php if ($category->slug != 'category1'): ?> 导航不显示某分类 <?php if (($category->slug != 'category1') && ($pages->slug != 'category2')): ?> 导航不显示两个分类 <?php if($this->category != "category1"): ?> 首页不显示某分类 <?php if (($this->_currentPage == 1) && ($this->sequence == 1)): ?> 首页第一篇文章 <?php elseif (array_key_exists('字段值',unserialize($this->___fields()))): ?> 自定义字段 <?php if($this->user->hasLogin()): ?> 是否登录 <?php endif; ?>{/collapse-item}{/collapse}自定义字段:<?php if (array_key_exists('image',unserialize($this->___fields()))): ?> <span class="icon-image"></span> <?php elseif (array_key_exists('music',unserialize($this->___fields()))): ?> <span class="icon-music"></span> <?php elseif (array_key_exists('play',unserialize($this->___fields()))): ?> <span class="icon-play"></span> <?php endif; ?> 首页不显示某分类<?php while($this->next()): ?> <?php if($this->category != "cateslug"): ?> //正常输出循环 <?php endif; ?> <?php endwhile; ?>调用相关文章<?php $this->related(5)->to($relatedPosts); ?> <ul> <?php while ($relatedPosts->next()): ?> <li><a href="<?php $relatedPosts->permalink(); ?>" title="<?php $relatedPosts->title(); ?>"><?php $relatedPosts->title(); ?></a></li> <?php endwhile; ?> </ul>调用指定分类文章<?php $this->widget('Widget_Archive@index', 'pageSize=6&type=category', 'mid=3') ->parse('<li><a href="{permalink}">{title}</a></li>'); ?>利用Typecho函数调用自定义分类内容显示方法在模板的functions.php文件中,加入下面的代码function themeInit($archive) { if ($archive->is('category', 'jobs')) { $archive->parameter->pageSize = 8; // 自定义条数 } }同时设定两种不同分类列表下显示不同文章输出数量的实现办法function themeInit($archive) { if ($archive->is('category', 'jobs')) { $archive->parameter->pageSize = 8; // 自定义条数 }elseif($archive->is('category', 'news')){ $archive->parameter->pageSize = 12; // 自定义条数 } }Typecho 程序如何调用循环页面、分类、标签代码方法<!--循环显示页面--> <?php $this->widget('Widget_Contents_Page_List')->to($pages); ?> <?php while($pages->next()): ?> <span class="nav-item<?php if($this->is('page', $pages->slug)): ?> nav-item-current<?php endif; ?>"> <a href="<?php $pages->permalink(); ?>" title="<?php $pages->title(); ?>"> <span><?php $pages->title(); ?></span> </a> </span> <?php endwhile; ?> <!--结束显示页面--> <!--循环所有分类--> <?php $this->widget('Widget_Metas_Category_List')->to($category); ?> <?php while ($category->next()): ?> <span class="nav-item<?php if($this->is('category', $category->slug)): ?> nav-item-current<?php endif; ?>"> <a href="<?php $category->permalink(); ?>" title="<?php $category->name(); ?>"> <span><?php $category->name(); ?></span> </a> </span> <?php endwhile; ?> <!--结束显示分类--> <!--循环显示标签 其中limit的5为显示数量--> <?php $this->widget('Widget_Metas_Tag_Cloud', array('sort' => 'count', 'ignoreZeroCount' => true, 'desc' => true, 'limit' => 5))->to($tags); ?> <?php while($tags->next()): ?> <span class="nav-item<?php if($this->is('tag', $tags->slug)): ?> nav-item-current<?php endif; ?>"> <a href="<?php $tags->permalink(); ?>" title="<?php $tags->name(); ?>"> <span><?php $tags->name(); ?></span> </a> </span> <?php endwhile; ?> <!--结束显示标签-->不同分类调用不同的模板页面<?php if($this->is('category','default')){ $this->need('default.php'); }elseif($this->is('category','technology')){ $this->need('technology.php'); }else{ $this->need('other.php'); } ?>或者<?php $slugArray = array('default','technology'); foreach($slugArray as $slug){ if($this->is('category',$slug)){ $this->need('default.php'); }else{ $this->need('other.php'); } } ?>Typecho最新24小时内文章加上NEW标签方法/** * 时间函数 * */ function timeZone($from){ $now = new Typecho_Date(Typecho_Date::gmtTime()); return $now->timeStamp - $from < 246060 ? true : false; }<?php if(timeZone($this->date->timeStamp)) echo ' new'; ?>最新文章调用<?php $this->widget('Widget_Contents_Post_Recent')->to($post); ?> <?php while($post->next()): ?> <a href=”<?php $post->permalink(); ?>” title=”<?php $post->title(); ?>”> <?php $post->title(25, '…'); ?></a> <?php endwhile; ?>热门文章调用function getHotComments($limit = 10){ $db = Typecho_Db::get(); $result = $db->fetchAll($db->select()->from('table.contents') ->where('status = ?','publish') ->where('type = ?', 'post') ->where('created <= unix_timestamp(now())', 'post') //添加这一句避免未达到时间的文章提前曝光 ->limit($limit) ->order('commentsNum', Typecho_Db::SORT_DESC) ); if($result){ foreach($result as $val){ $val = Typecho_Widget::widget('Widget_Abstract_Contents')->push($val); $post_title = htmlspecialchars($val['title']); $permalink = $val['permalink']; echo '<li><a href="'.$permalink.'" title="'.$post_title.'" target="_blank">'.$post_title.'</a></li>'; } } }大部分代码来自:https://www.itbulu.com/https://maxwuhan.com/
2022年10月12日
12,750 阅读
1 评论
1 点赞
苹果代码块美化设置方法
程序员的博客里绝对不会缺少的东西一定是代码块,那么怎么把代码块打扮的美美的呢?介于前两天有同学问我,我的代码块是怎么美化的,那么今天我就出个我美化代码块的教程,主要分为三个步骤,分割关键字、添加额外标签和自定义美化css加载 js 分割代码关键字使用任意代码块分割插件自动将代码关键字加上相应标签,我这是使用的是一款名叫 prism 的插件<script src="//cdn.jsdelivr.net/gh/cetr/cdn@master/prism.min.js"></script> 动态添加代码块头部样式用 js 动态对每篇文章里的代码块加上顶部三个彩色圆点,用于美化uiif (!$('pre').hasClass('line-numbers')) { $('pre').addClass('line-numbers').before($( '<figcaption class="line-numbers-head">' + '<div class="custom-carbon">' + '<div class="custom-carbon-dot custom-carbon-dot--red"></div>' + '<div class="custom-carbon-dot custom-carbon-dot--yellow"></div>' + '<div class="custom-carbon-dot custom-carbon-dot--green"></div>' + '</div>' + '</figcaption>' )); } 自定义 css 样式自定义 css 给代码块及代码块里的文字添加样式code[class*="language-"], pre[class*="language-"] { color: black; background: none; text-shadow: 0 1px white; font-family: Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace; font-size: 16px; text-align: left; white-space: pre; word-spacing: normal; word-break: normal; word-wrap: normal; line-height: 1.5; -moz-tab-size: 4; -o-tab-size: 4; tab-size: 4; -webkit-hyphens: none; -moz-hyphens: none; -ms-hyphens: none; hyphens: none; } pre[class*="language-"]::-moz-selection, pre[class*="language-"] ::-moz-selection, code[class*="language-"]::-moz-selection, code[class*="language-"] ::-moz-selection { text-shadow: none; } pre[class*="language-"]::selection, pre[class*="language-"] ::selection, code[class*="language-"]::selection, code[class*="language-"] ::selection { text-shadow: none; } @media print { code[class*="language-"], pre[class*="language-"] { text-shadow: none; } } /* Code blocks */ pre[class*="language-"] { padding: 1em; margin-bottom: 20px; overflow: auto; } :not(pre) > code[class*="language-"], pre[class*="language-"] { background: #f5f2f0; } :not(pre) > code[class*="language-"] { padding: .1em; border-radius: .3em; white-space: normal; } .token.comment, .token.prolog, .token.doctype, .token.cdata { color: #90a4ae; } .token.punctuation, .token.attr-name { color: #757575; } .token.namespace { opacity: .7; } .token.property, .token.tag, .token.boolean, .token.number, .token.constant, .token.symbol, .token.deleted { color: #f76d47; } .token.selector, .token.char, .token.builtin, .token.inserted { color: #be4dbc; } .token.keyword { color: #39adb5; } .token.operator, .token.entity, .token.url, .language-css .token.string, .style .token.string { color: #9a6e3a; } .token.atrule, .token.string, .token.attr-value { color: #4dc14c; } .token.function, .token.class-name { color: #6182b8; } .token.regex, .token.important, .token.variable { color: #eab700; } .token.parameter { color: #ee8019; } .token.important, .token.bold { font-weight: bold; } .token.italic { font-style: italic; } .token.entity { cursor: help; } figcaption.line-numbers-head { width: 100%; color: #8d949e; background-color: #f5f6f7; zoom: 1; border-top-left-radius: 0.25rem; border-top-right-radius: 0.25rem; } figcaption.line-numbers-head .custom-carbon-dot { display: inline-block; margin: 0 4px; border-radius: 50%; width: 10px; height: 10px; } figcaption.line-numbers-head .custom-carbon-dot--red { background-color: #ff5f56; } figcaption.line-numbers-head .custom-carbon-dot--yellow { background-color: #ffbd2e; } figcaption.line-numbers-head .custom-carbon-dot--green { background-color: #27c93f; } figcaption.line-numbers-head .custom-carbon { padding: 2px 0 0 9px; } pre.line-numbers { margin-top: 0; padding: 10px 1em 1em 1em; background-color: #f5f6f7; border-bottom-left-radius: 0.25rem; border-bottom-right-radius: 0.25rem; }
2021年06月18日
5,856 阅读
1 评论
0 点赞
2021-06-08
Typecho的Joe主题新增cnzz统计
0.成品图{tabs}{tabs-pane label="后台设置"}{/tabs-pane}{tabs-pane label="前台展示"}{/tabs-pane}{/tabs}1.修改footer.php,新增代码,文件路径:usr/themes/Joe-master/public{tabs}{tabs-pane label="代码"}第一段,在文件最上方添加 <?php if(Helper::options()->CnzzType !== 'off') { $CnzzIdSave = Helper::options()->CnzzId; $CnzzTypeStyle = Helper::options()->CnzzType; $CnzzTypeStyle = str_replace("CnzzId", $CnzzIdSave, $CnzzTypeStyle); } ?> 第二段添加在网站运行时间前面 <div class="item" style="margin: 10px; <?php if(Helper::options()->CnzzType == 'off') echo 'display:none;' ?>"> <span id='cnzz_stat_icon_<?php Helper::options()->CnzzType ?>'></span><script src='<?php echo $CnzzTypeStyle ?>' type='text/javascript'></script> </div>{/tabs-pane}{tabs-pane label="代码位置图片"}{/tabs-pane}{/tabs}2.修改functions.php文件,新增代码,文件路径:/usr/themes/Joe-master{tabs}{tabs-pane label="代码"}$CnzzId = new Typecho_Widget_Helper_Form_Element_Text( 'CnzzId', NULL, NULL, 'cnzz站点ID', '介绍:填写此处用于展示cnzz统计,该地址进行申请 https://www.umeng.com/web' ); $CnzzId->setAttribute('class', 'joe_content joe_custom');// 如果后台无法展示设置,将joe_custom替换为joe_other $form->addInput($CnzzId->multiMode()); $CnzzType = new Typecho_Widget_Helper_Form_Element_Select( 'CnzzType', array( 'off' => '关闭(默认)', 'https://s4.cnzz.com/z_stat.php?id=CnzzId&web_id=CnzzId' => '文字形式', 'https://s4.cnzz.com/z_stat.php?id=CnzzId&show=pic' => '图片样式1', 'https://s4.cnzz.com/z_stat.php?id=CnzzId&show=pic1' => '图片样式2', 'https://s4.cnzz.com/z_stat.php?id=CnzzId&show=pic2' => '图片样式3', 'https://s4.cnzz.com/z_stat.php?id=CnzzId&online=2' => '在线人数', 'https://s4.cnzz.com/z_stat.php?id=CnzzId&online=1&show=line' => '横排数据显示', ), 'off', '选择cnzz样式', '介绍:开启时请填写cnzz站点ID' ); $CnzzType->setAttribute('class', 'joe_content joe_custom');// 如果后台无法展示设置,将joe_custom替换为joe_other $form->addInput($CnzzType->multiMode());{/tabs-pane}{tabs-pane label="代码位置图片"}{/tabs-pane}{/tabs}
2021年06月08日
6,592 阅读
2 评论
0 点赞
2021-01-17
实现emlog网站信息统计的代码
有时候想在网页中向访客展示emlog博客的文章数量、评论数量、运行时间等信息,但emlog后台侧边栏没有提供相关的模块,因此需要博主自主添加博客统计信息代码。下面是博客吧整理的emlog网站信息统计代码,已在emlog 5.3.x上测试可用。 调用代码: 方法一:官方缓存类统计代码。优点:加载速度快;缺点:可能信息更新不及时。把以下代码添加到当前使用的主题模板文件中,如side.php文件:<?php $sta_cache = Cache::getInstance()->readCache('sta'); /*必须添加*/ ?> <ul> <li>文章总数:<?php echo $sta_cache['lognum']; ?> 篇</li> <li>评论总数:<?php echo $sta_cache['comnum_all']; ?> 条</li> <li>闲言碎语:<?php echo $sta_cache['twnum']; ?>条</li> <li>网站运行:<?php echo floor((time()-strtotime(20160423))/86400); ?> 天</li> </ul>附:$sta_cache[‘参数’]中的参数可选如下:lognum游客可见日志总数draftnum草稿,也就是隐藏文件数量comnum未隐藏的评论数量comnum_all所有评论数量hidecomnum被隐藏的评论数量twnum微语数量checknum未审核的文章数量方法二:自编函数,通过SQL语句查询相关数据。缺点:加载速度较缓存类慢;优点:实时显示把下面的代码添加到主题的module.php文件中:<?php //统计文章总数 function count_log_all(){ $db = MySql::getInstance(); $data = $db->once_fetch_array("SELECT COUNT(*) AS total FROM " . DB_PREFIX . "blog WHERE type = 'blog'"); return $data['total']; } //置顶文章数 function count_log_top(){ $db = MySql::getInstance(); $data = $db->once_fetch_array("SELECT COUNT(*) AS total FROM " . DB_PREFIX . "blog WHERE top = 'y' or sortop = 'y' AND type = 'blog'"); return $data['total']; } //隐藏文章数 function count_log_hide(){ $db = MySql::getInstance(); $data = $db->once_fetch_array("SELECT COUNT(*) AS total FROM " . DB_PREFIX . "blog WHERE hide = 'y' AND type = 'blog'"); return $data['total']; } //未审核文章数 function count_log_check(){ $db = MySql::getInstance(); $data = $db->once_fetch_array("SELECT COUNT(*) AS total FROM " . DB_PREFIX . "blog WHERE checked = 'n' AND type = 'blog'"); return $data['total']; } //加密文章数 function count_log_pass(){ $db = MySql::getInstance(); $data = $db->once_fetch_array("SELECT COUNT(*) AS total FROM " . DB_PREFIX . "blog WHERE password !='' AND type = 'blog'"); return $data['total']; } //统计页面总数 function count_page_all(){ $db = MySql::getInstance(); $data = $db->once_fetch_array("SELECT COUNT(*) AS total FROM " . DB_PREFIX . "blog WHERE type = 'page'"); return $data['total']; } //统计评论总数 function count_com_all(){ $db = MySql::getInstance(); $data = $db->once_fetch_array("SELECT COUNT(*) AS total FROM " . DB_PREFIX . "comment"); return $data['total']; } //统计友链总数 function count_link_all(){ $db = MySql::getInstance(); $data = $db->once_fetch_array("SELECT COUNT(*) AS total FROM " . DB_PREFIX . "link"); return $data['total']; } //统计微语评论总数 function count_treply_all(){ $db = MySql::getInstance(); $data = $db->once_fetch_array("SELECT COUNT(*) AS total FROM " . DB_PREFIX . "reply"); return $data['total']; } //统计分类总数 function count_sort_all(){ $db = MySql::getInstance(); $data = $db->once_fetch_array("SELECT COUNT(*) AS total FROM " . DB_PREFIX . "sort"); return $data['total']; } //统计子分类数 function count_sort_mod(){ $db = MySql::getInstance(); $data = $db->once_fetch_array("SELECT COUNT(*) AS total FROM " . DB_PREFIX . "sort WHERE pid != 0"); return $data['total']; } //统计标签总数 function count_tag_all(){ $db = MySql::getInstance(); $data = $db->once_fetch_array("SELECT COUNT(*) AS total FROM " . DB_PREFIX . "tag"); return $data['total']; } //统计微语总数 function count_tw_all(){ $db = MySql::getInstance(); $data = $db->once_fetch_array("SELECT COUNT(*) AS total FROM " . DB_PREFIX . "twitter"); return $data['total']; } //统计用户总数 function count_user_all(){ $db = MySql::getInstance(); $data = $db->once_fetch_array("SELECT COUNT(*) AS total FROM " . DB_PREFIX . "user"); return $data['total']; } //统计管理员总数 function count_user_admin(){ $db = MySql::getInstance(); $data = $db->once_fetch_array("SELECT COUNT(*) AS total FROM " . DB_PREFIX . "user WHERE role = 'admin'"); return $data['total']; } //统计作者总数 function count_user_writer(){ $db = MySql::getInstance(); $data = $db->once_fetch_array("SELECT COUNT(*) AS total FROM " . DB_PREFIX . "user WHERE role = 'writer'"); return $data['total']; } //统计附件总数 function count_att_all(){ $db = MySql::getInstance(); $data = $db->once_fetch_array("SELECT COUNT(*) AS total FROM " . DB_PREFIX . "attachment"); return $data['total']; } //最后发表文章时间 function last_post_log(){ $db = MySql::getInstance(); $sql = "SELECT * FROM " . DB_PREFIX . "blog WHERE type='blog' ORDER BY date DESC LIMIT 0,1"; $res = $db->query($sql); $row = $db->fetch_array($res); $date = date('Y-n-j H:i',$row['date']); return $date; }; ?> 调用代码:<ul> <li>文章总数:<?php echo count_log_all();?></li> <li>置顶文章:<?php echo count_log_top();?></li> <li>隐藏文章:<?php echo count_log_hide();?></li> <li>待审文章:<?php echo count_log_check();?></li> <li>加密文章:<?php echo count_log_pass();?></li> <li>页面总数:<?php echo count_page_all();?></li> <li>评论总数:<?php echo count_com_all();?></li> <li>友链总数:<?php echo count_link_all();?></li> <li>微语评论:<?php echo count_treply_all();?></li> <li>分类总数:<?php echo count_sort_all();?></li> <li>子分类数:<?php echo count_sort_mod();?></li> <li>标签总数:<?php echo count_tag_all();?></li> <li>微语总数:<?php echo count_tw_all();?></li> <li>用户总数:<?php echo count_user_all();?></li> <li>管理员数:<?php echo count_user_admin();?></li> <li>作者总数:<?php echo count_user_writer();?></li> <li>附件总数:<?php echo count_att_all();?></li> <li>最后更新:<?php echo last_post_log();?></li> </ul>来自:https://pjax.cn/em_tongji.html
2021年01月17日
6,282 阅读
0 评论
0 点赞
2018-07-05
IBM Cloud 促销代码
只需要回答三道简单的问题,即可获得 IBM Cloud 促销代码。 激活后你将获取以下升级: 账户由免费账户转换为试用账户 有效期延长至 185天 Cloud Foundry 组织配额提升为 16GB 星号(*)表示完成该事务所需的字段。 Q1. IBM Cloud 包含下面那种服务 * Watson AI 服务 区块链服务 大数据分析服务 IoT 服务 以上均包含 Q2. IBM Code 里的代码是开源的吗? * 是 不是 Q3. 下面哪些不属于 IBM Cloud Watson Service * Watson Assistant Speech To Text Natural Language Understanding Weather Company Data https://www-31.ibm.com/ibm/cn/digitalGCG/cloud-promotion/cn/index.html消息来源:loc
2018年07月05日
13,133 阅读
0 评论
0 点赞
2017-12-23
php获取bing每日背景代码
谨以此文章以记录。将下面代码保存为bing.php,使用方法为:<img src="bing.php" alt="tu" /><?php if($_GET['idx']==null){ $str=file_get_contents('http://cn.bing.com/HPImageArchive.aspx?idx=0&n=1'); } $str=file_get_contents('http://cn.bing.com/HPImageArchive.aspx?idx='.$_GET['idx'].'&n=1'); if(preg_match("/<url>(.+?)<\/url>/ies",$str,$matches)){ $imgurl='http://cn.bing.com'.$matches[1]; } if($imgurl){ header('Content-Type: image/JPEG'); @ob_end_clean(); @readfile($imgurl); @flush(); @ob_flush(); exit(); }else{ exit('error'); } ?>今日图片:文章来源:https://www.hunyl.com
2017年12月23日
6,158 阅读
0 评论
0 点赞
2014-11-16
代码编辑软件---Sublime Text 3
SublimeText 是一个代码编辑器,也是HTML和散文先进的文本编辑器. SublimeText 是由程序员 Jon Skinner 于2008年1月份所开发出来,它最初被设计为一个具有丰富扩展功能的Vim。同时 SublimeText 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。今天软件盒子给大家分享的是SublimeText3中文破解版这款软件,软件已破解,请放心使用。SublimeText具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等.还可自定义键绑定,菜单和工具栏.SublimeText 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等.Sublime Text(代码编辑神器) v3.3038 简体中文优化注册版的主要特点:1、深度整合GBK编码,可以完美支持GBK编码文件。2、去除自动检测升级提示。3、自动换行功能。4、安装Emmet(Zen Coding)插件.5、调整字体大小为11px以适合正常人使用习惯。6、软件已注册。Sublime Text 3常用快捷键(可以收集起来备用)Ctrl+D 选词 (反复按快捷键,即可继续向下同时选中下一个相同的文本进行同时编辑)Ctrl+G 跳转到相应的行Ctrl+J 合并行(已选择需要合并的多行时)Ctrl+L 选择整行(按住-继续选择下行)Ctrl+M 光标移动至括号内开始或结束的位置Ctrl+T 词互换Ctrl+U 软撤销Ctrl+P 查找当前项目中的文件和快速搜索;输入 @ 查找文件主标题/函数;或者输入 : 跳转到文件某行;Ctrl+R 快速列出/跳转到某个函数Ctrl+K Backspace 从光标处删除至行首Ctrl+K+B 开启/关闭侧边栏Ctrl+KK 从光标处删除至行尾Ctrl+K+T 折叠属性Ctrl+K+U 改为大写Ctrl+K+L 改为小写Ctrl+K+0 展开所有Ctrl+Enter 插入行后(快速换行)Ctrl+Tab 当前窗口中的标签页切换Ctrl+Shift+A 选择光标位置父标签对儿Ctrl+Shift+D 复制光标所在整行,插入在该行之前ctrl+shift+F 在文件夹内查找,与普通编辑器不同的地方是sublime允许添加多个文件夹进行查找Ctrl+Shift+K 删除整行Ctrl+Shift+L 鼠标选中多行(按下快捷键),即可同时编辑这些行Ctrl+Shift+M 选择括号内的内容(按住-继续选择父括号)Ctrl+Shift+P 打开命令面板Ctrl+Shift+/ 注释已选择内容Ctrl+Shift+↑可以移动此行代码,与上行互换Ctrl+Shift+↓可以移动此行代码,与下行互换Ctrl+Shift+[ 折叠代码Ctrl+Shift+] 展开代码Ctrl+Shift+Enter 光标前插入行 下载地址:http://dl2.cr173.com/soft2/SublimeText3_ha.zip
2014年11月16日
4,587 阅读
0 评论
0 点赞
2014-10-22
Emlog修改模版一些常用代码
Emlog随机查看文章<?php //随便看看 function sbkk_logs() { $db = MySql::getInstance(); $sql = "SELECT gid FROM ".DB_PREFIX."blog WHERE type='blog' and hide='n' ORDER BY rand() LIMIT 0,1"; $sbkk_logs_list = $db->query($sql); while($row = $db->fetch_array($sbkk_logs_list)){ echo Url::log($row['gid']); } } ?> 调用方式: <a href="<?php sbkk_logs();?>">随便看看</a> Emlog按天数时间调用随机热门文章列表<?php //30天按点击率排行文章 function getdatelogs($log_num) { $a=""; $b=1; $c=""; $d=1; $db = MySql::getInstance(); $time = time(); $sql = "SELECT gid,title,views,comnum FROM ".DB_PREFIX."blog WHERE type='blog' AND date > $time - 30*24*60*60 ORDER BY `views` DESC LIMIT 0,$log_num"; $list = $db->query($sql); while($row = $db->fetch_array($list)){ ?> <li><p class="text-muted"><span class="post-comments">评论 (<?php echo $row['comnum']; ?>)</span><a class="post-like"> ℃ (<span><?php echo $row['views']; ?></span>)</a></p><span class="label label-<?php echo $c+$d++;?>"><?php echo $a+$b++;?></span><a href="<?php echo Url::log($row['gid']); ?>" title="<?php echo $row['title']; ?>"><?php echo $row['title']; ?></a></li> <?php } ?> <?php } ?> 调用方式: <?php getdatelogs('5');?>“5”是显示数量,30*24*60*60为30天,如要改成7天只需要把30改为7即可,一年就改成365即可。Emlog实现最新文章标题加摘要显示代码<?php //首页置顶头条 function getZhidingLogs() { $db = MySql::getInstance(); $sql = "SELECT gid,title,content,date FROM ".DB_PREFIX."blog WHERE type='blog' and top='y' ORDER BY `top` DESC ,`date` DESC LIMIT 0,1"; $list = $db->query($sql); while($row = $db->fetch_array($list)){ //$row['content'] = htmlspecialchars($row['content']); $row['content'] = strip_tags($row['content']);?> <h1><a href="<?php echo Url::log($row['gid']); ?>" title="<?php echo $row['title']; ?>" target="_blank"><?php echo $row['title']; ?></a></h1> <span class="note"><?php echo mb_substr($row['content'],0,85,'utf-8'); ?>...</span><a href="<?php echo Url::log($row['gid']); ?>" class="font2_2" target="_blank">阅读全文>></a> <?php } ?> <?php } ?> 在需要的地方使用<?php getZhidingLogs();?>调用,输出摘要文字字数请自行修改<?php echo mb_substr($row['content'],0,85,'utf-8');?>这段代码中,中间的85为字数,自己根据需要调整。Emlog两串美化代码判断时间<?php $t=time() - 3*24*60*60; $log_t=gmdate('Y-m-d',$$value['date']); $diy_t=date("Y-m-d",$t); if($log_t > $diy_t) echo '<img src="new.png" alt="newico" />'; ?>判断浏览量<?php if ($value['views'] >= 100) echo '<img src="hot.png" alt="hotico" />'; ?> Emlog狂欢一下特效这个不好讲,请直接访问http://lanyes.org/zuopin/615.html查看吧Emlog所有标签列表代码<?php require_once 'init.php'; define('TEMPLATE_PATH', TPLS_PATH.Option::get('nonce_templet').'/'); $CACHE = Cache::getInstance(); $options_cache = $CACHE->readCache('options'); extract($options_cache); $navibar = unserialize($navibar); $curpage = CURPAGE_HOME; $site_title = '所有标签列表 - '.Option::get('blogname'); $site_key = '博客标签列表'; $site_description = '博客所有标签列表页面'; include View::getView('header'); ?> <div style="background:#fff;padding:10px;display: table;height:100%"> <div style="font-size:16px;padding-bottom:5px;margin-bottom:10px;color:#0C3;border-bottom:1px solid #00aff0"> 现在位置:<a title="返回首页" href="<?php echo BLOG_URL; ?>">首页</a> ? 所有标签列表 </div> <ul> <?php global $CACHE; $tag_cache = $CACHE->readCache('tags'); ?> <?php foreach($tag_cache as $value): ?> <li style="white-space:nowrap;margin:0 10px 10px 0;float:left"> <span style="font-size:<?php echo $value['fontsize']; ?>pt; line-height:30px;border: 1px dashed #CCC;padding: 5px;border-radius: 10px;display: block;"> <a style="color:#<?php echo dechex(rand(0,16777215));?>" href="<?php echo Url::tag($value['tagurl']); ?>" title="<?php echo $value['usenum']; ?> 篇日志"> <?php echo $value['tagname']; ?>(<?php echo $value['usenum']; ?>) </a> </span> </li> <?php endforeach; ?> </ul> </div> <div style="clear:both"></div> <?php include View::getView('footer');?> 使用方式:在您网站的根目录下创建一个tag.php文件,然后访问即可,“tag”可以更好为您要的名字,这个随意EMLOG调用指定多个分类文章列表代码<?php function Get_newlogs($log_num) { $db = MySql::getInstance(); $sql = "SELECT gid,title,date,content,views FROM ".DB_PREFIX."blog WHERE type='blog' and hide='n' and sortid IN (1,2,3,4) ORDER BY `date` DESC LIMIT 0,$log_num"; $list = $db->query($sql); while($row = $db->fetch_array($list)){ ?> <li><a href="<?php echo Url::log($row['gid']); ?>"><?php echo $row['title']; ?></a></li> <?php } ?> <?php } ?> 调用方式: <?php Get_newlogs(5);?>代码中的5表示需要输出的文章列表条数。 Emlog自动获取网站Favicon图标代码并自动保存<?php //获取友链favicon站标 function favicon_file($site_url){ $site_url = strtolower(rtrim($site_url,'/')); $site_md5 = md5($site_url); $fav_url = TEMPLATE_URL.'favicon/'; $fav_path = TEMPLATE_PATH.'favicon/'; $t = 2592000; //30天,单位:秒 if(!is_file($fav_path.$site_md5.'.png') || (time() - filemtime($fav_path.$site_md5.'.png')) > $t) { copy('http://www.google.com/s2/favicons?domain='.str_replace('http://','',$site_url),$fav_path.$site_md5.'.png'); } return $fav_url.$site_md5.'.png'; }?> 调用方式: <?php echo favicon_file($value['url']); ?>Emlog评论实现IP显示<?php function convertip($ip){ $dat_path = EMLOG_ROOT . '/content/templates/xiu/ip.dat'; //*数据库路径*// if (!($fd = @fopen($dat_path, 'rb'))) { return 'IP数据库文件不存在或者禁止访问或者已经被删除!'; } $ip = explode('.', $ip); $ipNum = $ip[0] * 16777216 + $ip[1] * 65536 + $ip[2] * 256 + $ip[3]; $DataBegin = fread($fd, 4); $DataEnd = fread($fd, 4); $ipbegin = implode('', unpack('L', $DataBegin)); if ($ipbegin < 0) { $ipbegin += pow(2, 32); }$ipend = implode('', unpack('L', $DataEnd)); if ($ipend < 0) { $ipend += pow(2, 32); } $ipAllNum = ($ipend - $ipbegin) / 7 + 1; $BeginNum = 0; $EndNum = $ipAllNum; while ($ip1num > $ipNum || $ip2num < $ipNum) { $Middle = intval(($EndNum + $BeginNum) / 2); fseek($fd, $ipbegin + 7 * $Middle); $ipData1 = fread($fd, 4); if (strlen($ipData1) < 4) { fclose($fd); return '系统出错!'; } $ip1num = implode('', unpack('L', $ipData1)); if ($ip1num < 0) { $ip1num += pow(2, 32); } if ($ip1num > $ipNum) { $EndNum = $Middle; continue; } $DataSeek = fread($fd, 3); if (strlen($DataSeek) < 3) { fclose($fd); return '系统出错!'; } $DataSeek = implode('', unpack('L', $DataSeek . chr(0))); fseek($fd, $DataSeek); $ipData2 = fread($fd, 4); if (strlen($ipData2) < 4) { fclose($fd); return '系统出错!'; } $ip2num = implode('', unpack('L', $ipData2)); if ($ip2num < 0) { $ip2num += pow(2, 32); } if ($ip2num < $ipNum) { if ($Middle == $BeginNum) { fclose($fd); return '未知'; } $BeginNum = $Middle; } } $ipFlag = fread($fd, 1); if ($ipFlag == chr(1)) { $ipSeek = fread($fd, 3); if (strlen($ipSeek) < 3) { fclose($fd); return '系统出错!'; } $ipSeek = implode('', unpack('L', $ipSeek . chr(0))); fseek($fd, $ipSeek); $ipFlag = fread($fd, 1); } if ($ipFlag == chr(2)) { $AddrSeek = fread($fd, 3); if (strlen($AddrSeek) < 3) { fclose($fd); return '系统出错!'; } $ipFlag = fread($fd, 1); if ($ipFlag == chr(2)) { $AddrSeek2 = fread($fd, 3); if (strlen($AddrSeek2) < 3) { fclose($fd); return '系统出错!'; } $AddrSeek2 = implode('', unpack('L', $AddrSeek2 . chr(0))); fseek($fd, $AddrSeek2); } else { fseek($fd, -1, SEEK_CUR); } while (($char = fread($fd, 1)) != chr(0)) { $ipAddr2 .= $char; } $AddrSeek = implode('', unpack('L', $AddrSeek . chr(0))); fseek($fd, $AddrSeek); while (($char = fread($fd, 1)) != chr(0)) { $ipAddr1 .= $char; } } else { fseek($fd, -1, SEEK_CUR); while (($char = fread($fd, 1)) != chr(0)) { $ipAddr1 .= $char; } $ipFlag = fread($fd, 1); if ($ipFlag == chr(2)) { $AddrSeek2 = fread($fd, 3); if (strlen($AddrSeek2) < 3) { fclose($fd); return '系统出错!'; } $AddrSeek2 = implode('', unpack('L', $AddrSeek2 . chr(0))); fseek($fd, $AddrSeek2); } else { fseek($fd, -1, SEEK_CUR); } while (($char = fread($fd, 1)) != chr(0)) { $ipAddr2 .= $char; } } fclose($fd); if (preg_match('/http/i', $ipAddr2)) { $ipAddr2 = ''; } $ipaddr = "{$ipAddr1} {$ipAddr2}"; $ipaddr = preg_replace('/CZ88.Net/is', '', $ipaddr); $ipaddr = preg_replace('/^s*/is', '', $ipaddr); $ipaddr = preg_replace('/s*$/is', '', $ipaddr); if (preg_match('/http/i', $ipaddr) || $ipaddr == '') { $ipaddr = '未知'; } $ipaddr = iconv('gbk', 'utf-8//IGNORE', $ipaddr); if ($ipaddr != ' ') { return $ipaddr; } else { $ipaddr = '评论者来自火星,无法或者其所在地!'; } return $ipaddr; } ?> 调用方式: <?php echo convertip($comment['ip']); ?>,ip.dat自己从纯真官网下载好了 Emlog评论显示系统浏览器及用户操作系统请使用http://www.emlog.net/plugin/164插件1、下载插件并解压;2、上传至emlog插件根目录并后台激活此插件;3、打开你所用模板中的module.php,找到评论列表模块和子评论列表模块,在foreach和endforeach之间的合适位置插入一段显示浏览器和操作系统的代码。以官方模板为例:找到评论列表模块和子评论列表模块的<?php echo $comment['poster']; ?>,在这之后1.0~1.1版添加:<?php if(function_exists('display_useragent')){display_useragent($comment['cid']);} ?>1.2版以后添加:<?php if(function_exists('display_useragent')){display_useragent($comment['cid'],$comment['mail']);} ?>Emlog获取制定分类文章及数量<?php //调用主分类和子分类文章 function lonewolf_getlogs($sortid,$log_num) { $db = MySql::getInstance(); $sql = "SELECT gid,title,date FROM ".DB_PREFIX."blog WHERE type='blog' and hide='n' and sortid in (".lonewolf_getsortids($sortid).") ORDER BY `date` DESC LIMIT 0,$log_num"; $list = $db->query($sql); while($row = $db->fetch_array($list)){ ?> <li><span><?php $log_t=gmdate('Y-m-d',$row['date']);echo $log_t;?></span><i>+</i><a title="<?php echo $row['title'];?>" href="<?php echo Url::log($row['gid']);?>"><?php echo $row['title'];?></a></li> <?php } } ?> 调用方式: <?php lonewolf_getlogs(1,16);?>“1”为分类ID,“16”为显示数量 Emlog日志列表文字显示限制<?php $logdes = blog_tool_purecontent($value['content'], 178);?> 调用方式: <?php echo $logdes; ?>,178就是显示数量 Emlog首页置顶代码<?php //首页置顶日志 function Home_Top_Logs() { $db = MySql::getInstance(); $sql = "SELECT gid,title,content,date FROM ".DB_PREFIX."blog WHERE type='blog' and top='y' ORDER BY `top` DESC ,`date` DESC LIMIT 0,12"; $list = $db->query($sql); while($row = $db->fetch_array($list)){ ?> <li><img src="<?php get_thum($row['gid']);?>" width="220" height="125" alt="<?php echo $row['title'];?>" /><div class="logtitle"><?php echo $row['title'];?></div><div class="logtouming"></div><div class="logbackground"><a href="<?php echo Url::log($row['gid']);?>"></a></div><div class="hot"></div></li> <?php } ?> <?php } ?> 调用方式: <?php Home_Top_Logs();?>Emlog判断分类输出子分类ID号<?php //判断分类输出子分类ID号 function getsortids($sortid){ global $CACHE; $sort_cache = $CACHE->readCache('sort'); $sort = $sort_cache[$sortid]; if ($sort['pid'] != 0 || empty($sort['children'])) { $fenlei_ids = $sortid; } else { $sortids = array_merge(array($sortid), $sort['children']); $fenlei_ids = implode(',', $sortids); } return $fenlei_ids; }?> Emlog分类置顶代码<?php //分类置顶日志 function Sort_Top_Logs($sortid) { $db = MySql::getInstance(); $sql = "SELECT gid,title,content,date,sortid FROM ".DB_PREFIX."blog WHERE type='blog' and sortop='y' and sortid in (".getsortids($sortid).") ORDER BY `sortop` DESC ,`date` DESC LIMIT 0,4"; $list = $db->query($sql); while($row = $db->fetch_array($list)){ ?> <li><img src="<?php get_thum($row['gid']);?>" width="220" height="125" alt="<?php echo $row['title'];?>" /><div class="logtitle"><?php echo $row['title'];?></div><div class="logtouming"></div><div class="logbackground"><a href="<?php echo Url::log($row['gid']);?>"></a></div><div class="hot"></div></li> <?php } ?> <?php } ?> 调用方式: <?php Sort_Top_Logs($sortid);?> Emlog获取文章缩略图<?php //获取文章缩略图 function get_thum($logid){ $db = MySql::getInstance(); $thum_pic = EMLOG_ROOT.'/thumpic/'.$logid.'.jpg'; if (is_file($thum_pic)) { $thum_url = BLOG_URL.'thumpic/'.$logid.'.jpg'; }else{ $sqlimg = "SELECT * FROM ".DB_PREFIX."attachment WHERE blogid=".$logid." AND (`filepath` LIKE '%jpg' OR `filepath` LIKE '%gif' OR `filepath` LIKE '%png') ORDER BY `aid` ASC LIMIT 0,1"; $img = $db->query($sqlimg); while($roww = $db->fetch_array($img)){ $thum_url=BLOG_URL.substr($roww['filepath'],3,strlen($roww['filepath'])); } if (empty($thum_url)) { srand((double)microtime()*1000000); $randval = rand(0,8); $thum_url = BLOG_URL.'content/templates/xiu/images/rand/'.$randval.'.jpg'; } } echo $thum_url; } ?> Emlog调用网站统计代码日志总数:<?php echo $sta_cache['lognum'];?>评论总数:<?php echo $sta_cache['comnum_all'];?>碎语总数:<?php echo $sta_cache['twnum'];?>运行时间:<?php echo floor((time()-strtotime("2014-01-30"))/86400); ?>2014-01-30替换为您博客开始时间选择在侧边栏显示站点统计,把以上代码添加到模板文件(side.php)对应位置可以了。也可使用小劣开发的EMLOG统计插件(飞机票:http://www.emlog.net/plugin/172)Emlog日志列表显示图片(文章有图则显示文章图)<?php if(pic_thumb($value['content'])){ $imgsrc = pic_thumb($value['content']); }else $imgsrc = TEMPLATE_URL.'images/'.rand(1,40).'.jpg'; ?> 调用方式: <?php echo $imgsrc; ?> Emlog评论头像显示图片<?php $heads=array("img/logcmt/01.jpg"=>"01","img/logcmt/02.jpg"=>"02","img/logcmt/03.jpg"=>"03","img/logcmt/04.jpg"=>"04","img/logcmt/05.jpg"=>"05","img/logcmt/06.jpg"=>"06","img/logcmt/07.jpg"=>"07","img/logcmt/08.jpg"=>"08","img/logcmt/09.jpg"=>"09","img/logcmt/10.jpg"=>"10","img/logcmt/11.jpg"=>"11","img/logcmt/12.jpg"=>"12","img/logcmt/13.jpg"=>"13","img/logcmt/14.jpg"=>"14"); ?> <?php if(empty($comment['mail'])){ echo TEMPLATE_URL;echo array_rand($heads);}else{echo getGravatar($comment['mail']);} ?> Emlog头像缓存<?php function get_avatar($mail,$alt,$size = '60',$default='wavatar'){ $alt = strip_tags($alt); $email_md5=md5(strtolower($mail));//通过MD5加密邮箱 $cache_path=TEMPLATE_PATH."cache"; //缓存文件夹路径,需要换上你的主题目录名称 if(!file_exists($cache_path)) { mkdir($cache_path,0700); } $avatar_url=TEMPLATE_URL."cache/".$email_md5.'.jpg'; //头像相对路径 $avatar_abs_url=$cache_path."/".$email_md5.'.jpg'; //头像绝对路径 $cache_time=24*3600*7; //缓存时间为7天 if (empty($default)) $default = $cache_path. '/default.png'; if(!file_exists($avatar_abs_url) || (time()-filemtime($avatar_abs_url)) > $cache_time)//过期或图片不存在 { $new_avatar = getGravatar($mail,$size,$default); copy($new_avatar,$avatar_abs_url); } return "<img title='{$alt}' alt='{$alt}' src='{$avatar_url}' height='{$size}' width='{$size}' />"; } ?> 调用方式: <?php get_avatar($comment['mail'],"{$comment['poster']}{$comment['comment_nums']}");?> Emlog文章页路径获取分类<?php //文章页路径获取分类 function sortbread($sortid){ global $CACHE; $sort_cache = $CACHE->readCache('sort'); ?> <?php if (isset($sort_cache[$sortid])): ?> <?php if (isset($sort_cache[$sort_cache[$sortid]['pid']])): ?> <a href="<?php echo Url::sort($sort_cache[$sortid]['pid']); ?>"><?php echo $sort_cache[$sort_cache[$sortid]['pid']]['sortname']; ?></a> » <?php endif; ?> <a href="<?php echo Url::sort($sortid); ?>"><?php echo $sort_cache[$sortid]['sortname'];?></a> » <?php endif;?> <?php }?> 调用方式: <?php sortbread($sortid); ?> Emlog标签作为页面关键词<?php //标签作为页面关键词 function page_tag_key($blogid){ global $CACHE; $log_cache_tags = $CACHE->readCache('logtags'); if (!empty($log_cache_tags[$blogid])){ $tag = ''; foreach ($log_cache_tags[$blogid] as $value){ $tag .= $value['tagname'].','; } echo $tag; } }?>留着以后备用,先收着,来源xlonewolf.net
2014年10月22日
5,757 阅读
0 评论
0 点赞
2014-01-04
邮箱订阅代码
这个是利用QQ邮箱提供的功能实现。list.qq.com 在想要的地方插入以下代码:<form action="http://list.qq.com/cgi-bin/qf_compose_send" target="_blank" method="post"> <input type="hidden" name="t" value="qf_booked_feedback"> <input type="hidden" name="id" value="9120fec0cddce258329a37082499a81bf3caf418875bef77797"> <input id="to" onfocus="if (this.value == '输入邮箱 订阅本站') {this.value = '';}" onblur="if (this.value == '') {this.value = '输入邮箱 订阅本站';}" value="输入邮箱 订阅本站" name="to" type="text" class="feed-mail-input"><input type="submit" value="订阅"> </form> 其中0fec0cddce258329a37082499a81bf3caf418875bef77797就是在list.qq.com里申请的
2014年01月04日
4,267 阅读
0 评论
0 点赞
2014-01-01
全能代码编辑器:Notepad++ 6.5.3下载
2014新年第一天,全能代码编辑器Notepad++迎来了最新版6.5.3,新增支持将高级滚动设置为可选,增强了排序行功能,如果几行被选中,只有选定的行能进行排序,修复多个bug等功能更新。Notepad++是一款免费的源代码编辑器,并且可以替代系统自带的记事本的功能,同时也支持几类计算机语言。编辑器可以运行在微软的windows系统环境下,它的使用是受GPL许可证保护的。基于强大的编辑组件Scintilla,Notepad++也是使用C++代码开发而成,并且使用了win32的api接口和STL标准模板库,因此确保软件有更高效的执行效率和更小的程序体积。在不失用户体验度的同时,也可以尽可能允许用户自定义多项的程序设置。Notepad++ 6.5.3更新日志:• 支持将高级滚动设置为可选• 增强了排序行功能,如果几行被选中,只有选定的行能进行排序• 在Ascii插入面板中新增十六进制值列• 增强性能• 修复多个bugNotepad++ 6.5.3官方下载:安装版:7.2 MBhttp://download.tuxfamily.org/notepadplus/6.5.3/npp.6.5.3.Installer.exe绿色版:4.3 MBhttp://download.tuxfamily.org/notepadplus/6.5.3/npp.6.5.3.bin.7z支持Windows XP、Vista、Win7、Win8、Win8.1等平台,支持简体中文。
2014年01月01日
4,614 阅读
0 评论
0 点赞
2013-12-11
全能代码编辑器:Notepad++ 6.5.2 下载
全能代码编辑器Notepad++迎来了最新版6.5.2,新增排序线功能、修复了通用风格无法完全加载的bug等功能更新。Notepad++是一款免费的源代码编辑器,并且可以替代系统自带的记事本的功能,同时也支持几类计算机语言。编辑器可以运行在微软的windows系统环境下,它的使用是受GPL许可证保护的。基于强大的编辑组件Scintilla,Notepad++也是使用C++代码开发而成,并且使用了win32的api接口和STL标准模板库,因此确保软件有更高效的执行效率和更小的程序体积。在不失用户体验度的同时,也可以尽可能允许用户自定义多项的程序设置。Notepad++ 6.5.2更新日记:• 新增排序线功能• 内置的命令工作新增2个外部命令• 修复了通用风格无法完全加载的bug• 提升了对php和js的功能解析• 为软件面板新增6项功能• 修复软件崩溃问题Notepad++ 6.5.2界面:Notepad++ 6.5.2官方下载:Notepad++ 6.5.2安装版:7.2 MB http://download.tuxfamily.org/notepadplus/6.5.2/npp.6.5.2.Installer.exe
2013年12月11日
4,782 阅读
0 评论
0 点赞
2013-11-20
CSS边角折叠实战
在大量的网页设计作品中,都用到了这种折叠效果,通常用于标题背景。一般可以用PhotoShop来实现这样的效果,但是在当今广泛提倡减少网页图片使用量的情况下,我们还是少用图片为好。其实使用CSS是可以很容易地实现这种效果的,废话少说,直接上代码:代码如下:<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <title>CSS Shapes</title> <style> #container { background: #666; margin: auto; width: 500px; height: 700px; padding-top: 30px; font-family: helvetica, arial, sans-serif; } h1 { background: #e3e3e3; background: -moz-linear-gradient(top, #e3e3e3, #c8c8c8); background: -webkit-gradient(linear, left top, left bottom, from(#e3e3e3), to(#c8c8c8)); padding: 10px 20px; margin-left: -20px; margin-top: 0; position: relative; width: 70%; -moz-box-shadow: 1px 1px 3px #292929; -webkit-box-shadow: 1px 1px 3px #292929; color: #454545; text-shadow: 0 1px 0 white; } .arrow { width: 0; height: 0; line-height: 0; border-left: 20px solid transparent; border-top: 10px solid #c8c8c8; top: 104%; left: 0; position: absolute; } </style> <!--[if IE]> <style> .arrow { top: 100%; } </style> <![endif]--> </head> <body> <div id="container"> <h1> My Heading <span class="arrow"></span> </h1> </div> </body> </html> 这其中关键的属性是border-left 和 border-top,这两个属性形成了一个三角形效果,也就是带子的拐角效果。 border-right、border-left和border-bottom、border-top的不同组合,可以实现三角形的不同的朝向,你可以举一反三制作你的折叠效果了
2013年11月20日
6,277 阅读
0 评论
0 点赞
2013-11-19
wordpress分页代码,追求速度,远离插件
分页是用来切换文章的一个功能,添加了wordpress分页后,用户即可自由到达指定的页面数浏览分类文章,而这样的一个很简单功能却有很多朋友在用插件,小编一直相应着一句wordpress界的口号“追求速度,远离插件”,而今天介绍的正是wordpress分页代码的教程!其实方法很简单,依然是运用到wordpress的funtions.php文件:function par_pagenavi($range = 9){ global $paged, $wp_query; if ( !$max_page ) {$max_page = $wp_query->max_num_pages;} if($max_page > 1){if(!$paged){$paged = 1;} if($paged != 1){echo "<a href='" . get_pagenum_link(1) . "' class='extend' title='跳转到首页'> 返回首页 </a>";} previous_posts_link(' 上一页 '); if($max_page > $range){ if($paged < $range){for($i = 1; $i <= ($range + 1); $i++){echo "<a href='" . get_pagenum_link($i) ."'"; if($i==$paged)echo " class='current'";echo ">$i</a>";}} elseif($paged >= ($max_page - ceil(($range/2)))){ for($i = $max_page - $range; $i <= $max_page; $i++){echo "<a href='" . get_pagenum_link($i) ."'"; if($i==$paged)echo " class='current'";echo ">$i</a>";}} elseif($paged >= $range && $paged < ($max_page - ceil(($range/2)))){ for($i = ($paged - ceil($range/2)); $i <= ($paged + ceil(($range/2))); $i++){echo "<a href='" . get_pagenum_link($i) ."'";if($i==$paged) echo " class='current'";echo ">$i</a>";}}} else{for($i = 1; $i <= $max_page; $i++){echo "<a href='" . get_pagenum_link($i) ."'"; if($i==$paged)echo " class='current'";echo ">$i</a>";}} next_posts_link(' 下一页 '); if($paged != $max_page){echo "<a href='" . get_pagenum_link($max_page) . "' class='extend' title='跳转到最后一页'> 最后一页 </a>";}} } 代码放进去后,再到主题的style.css文件里添加样式:.page_navi{width:100%;height:36px;line-height:36px;text-align:center;overflow:hidden;padding-top:1em;} .page_navi a{padding:3px 8px;margin:2px;text-decoration:none;color:#888;border:1px solid #ccf;} .page_navi a:hover,.page_navi a.current{border:1px solid #356aa0;color:#356aa0;font-weight:bolder;} 到了这步,功能是有了,但还要到前端加上调用,即添加调用代码至主题index.php、archive.php、category.php、search.php<div class="page_navi"><?php par_pagenavi(9); ?></div> 9的含义是您要显示的页面熟,可以自由设置数值大小,样式也可以根据自己的喜欢修改!这么样,是否真的那么简单呢?比用插件方便省心多了吧!!文章来源:http://www.2zzt.com/jcandcj/3547.html
2013年11月19日
17,799 阅读
0 评论
0 点赞
2013-11-18
GIT发布、管理代码教程
Git客户端使用说明下载Git客户端目前,无论是 Windows 还是 Linux 平台都有比较成熟的Git客户端工具,具体信息如下: Windows下TortoiseGit:立即下载 Linux下:立即下载 下面以Windows为例,概述安装及使用Git部署代码的主要流程。安装TortoiseGit如果您已安装了TortoiseGit,则请跳过此步。安装TortoiseGit之前需要先安装msysGit(下载地址:http://code.google.com/p/msysgit/downloads/detail?name=msysGit-fullinstall-1.8.1.2-preview20130201.exe&can=2&q= ),打开安装程序之后按提示进行安装即可。安装TortoiseGit也比较简单,点击运行安装程序即可;安装过程中如果出现下图(如图3所示),则表示Git已安装成功,可进入下一步。图3:安装TortoiseGit成功配置msysGit路径在第一次clone版本库时,会提示“Set MSysGit Path”;设置msysGit安装目录下的bin目录即可,或右键选择“TortoiseGit > Settings”进行设置。clone代码使用TortoiseGit检出代码即clone代码的主要流程如下:1. 创建本地目录,用于存放从Git版本库中clone的代码。(如图4所示)本地目录可以是任意名字;本地目录将作为Git的工作目录。图4:设置msysGit路径2. 选中本地目录,右键选择“Git Clone”。(如图5所示)图5:Git Clone操作3. 在弹出窗口中,粘贴应用对应的Git地址。(如图6所示)图6:填写信息4. 点击“Ok”后,进入用户信息验证;输入百度账号和密码,完成验证(如图7所示)。图7:用户信息验证5. 验证成功,出现如下提示(如图8所示);将代码clone到本地目录中。图8:代码clone成功6. 进入本地目录即看到clone到本地的文件。代码管理在本地目录中,您可以对版本代码进行增加文件或目录、删除文件或目录、修改文件内容及重命名文件和目录等。新增文件和目录通过Git新增文件和目录的操作步骤如下:1. 如需在本地Git目录中新增文件或目录,既可在本地目录中直接新建,也可从其他地方复制进来。2. 在提交到Git地址之前,需要先进行“Add”操作,告知Git客户端增加了文件(如图9所示)。图9:增加操作3. 如果新增目录中包含文件或者目录,可选中所有,将新增目录以及其子目录或子文件一次性加入。(如图10所示)图10:增加目录内文件4. 点击“Ok”操作成功之后弹出的对话框(如图11所示中),点击“Commit”提交修改,也可直接“commit”将代码提交到Git地址中去。图11:提交删除文件和目录选中要删除的文件,选择Git的“delete”操作,删除当前文件(如图12所示);请不要直接删除。图12:删除文件重命名文件通过Git重命名文件的操作步骤如下:1. 选中要重命名的文件,点击右键选择Git的“Rename”操作(如图13所示);请勿直接重命名文件。图13:重命名文件2. 在弹出的窗口中输入新的文件名。(如图14所示)图14:填写文件名3. 点击“Ok”后,刷新本地目录即可。提交更新通过Git提交更新的操作步骤如下:1. 在将更新提交到Git地址时,可逐个更新提交,也可在本地目录一次提交所有更新。(如图15所示)图15:commit所有更新2. 在弹出框中,根据需要输入本次commit的更新说明(如图16所示);点击“确定”,完成commit操作。图16:commit信息框3. 如果显示如下框(如图17所示),则说明提交更新成功。图17:commit更新成功4. Push到服务器上,点击右键选择“Push”操作,弹出如下对话框(如图18所示)。图18:Push版本库对话框5. 点击“Ok”进行提交,输入用户名以及密码。提交成功后显示下图所示对话框。图19:Push版本库成功此外,利用TortoiseGit可进行的操作还有很多,如:“更新”、“查看日志”和“撤销”等;这里不再赘述。保存用户名和密码TortoiseGit不支持本地保存用户名和密码。为避免每次与服务器的交互都需要输入用户名以及密码,可在Windows环境下新增一个名为HOME的环境变量,如图20所示。图20:设置环境变量HOME变量的值可以自己定义,在新建的HOME环境变量指定的目录中,新建名为_netrc的文件,文件内容如图21所示。(如使用Linux环境则可在当前登录帐号的根目录下新建一个名为.netrc的文件,内容与图21所示一致。)图21:_netrc内容设置此时,再次通过TortoiseGit进行服务器操作时可免输用户名和密码,但如使用公用计算机时则需要防止帐号密码的泄露。拿W7系统下载做了下测试,在XP和WIN7 64位操作系统下,都没出现问题,Git发布代码非常方便,感谢百度开发者中心!
2013年11月18日
7,734 阅读
0 评论
0 点赞
2013-11-15
wordpress调用随机文章的代码
有些wordpress博主喜欢在文章内容的结尾或者侧边栏随机调用几篇文章,以提高网站的粘性,也利于seo。wordpress随机文章的调用代码如下:<?php query_posts(array('orderby'=>'rand','posts_per_page'=>10,'ignore_sticky_posts'=>true)); while(have_posts()): the_post(); ?> <a href="<?php the_permalink(); ?>" title="<?php the_title_attribute(array('before'=>'查看 ','after'=>' 的文章')); ?>"><?php the_title(); ?></a> <?php endwhile; wp_reset_query(); ?>
2013年11月15日
16,713 阅读
0 评论
0 点赞
2013-10-05
纯CSS写的下拉菜单代码 Dropmenu
分享一个纯CSS写的下拉菜单代码,结构非常简单,代码十分清晰,HTML+CSS下拉菜单代码。HTML代码部分:<ul id="menu"> <li><a href="">Home</a></li> <li><a href="">About Us</a> <ul> <li><a href="">The Team</a></li> <li><a href="">History</a></li> <li><a href="">Vision</a></li> </ul> </li> <li><a href="">Products</a> <ul> <li><a href="">Cozy Couch</a></li> <li><a href="">Great Table</a></li> <li><a href="">Small Chair</a></li> <li><a href="">Shiny Shelf</a></li> <li><a href="">Invisible Nothing</a></li> </ul> </li> <li><a href="">Contact</a> <ul> <li><a href="">Online</a></li> <li><a href="">Right Here</a></li> <li><a href="">Somewhere Else</a></li> </ul> </li> </ul>CSS代码部分:ul { font-family: Arial, Verdana; font-size: 14px; margin: 0; padding: 0; list-style: none; } ul li { display: block; position: relative; float: left; } li ul { display: none; } ul li a { display: block; text-decoration: none; color: #ffffff; border-top: 1px solid #ffffff; padding: 5px 15px 5px 15px; background: #2C5463; margin-left: 1px; white-space: nowrap; } ul li a:hover { background: #617F8A; } li:hover ul { display: block; position: absolute; } li:hover li { float: none; font-size: 11px; } li:hover a { background: #617F8A; } li:hover li a:hover { background: #95A9B1; }
2013年10月05日
6,073 阅读
0 评论
0 点赞
2013-08-28
EMLOG调用指定多个分类文章列表代码
对于SQL命令不是很熟悉,昨日想用EMLOG做一个文章类表调用,需要用到SQL命令代码,调用指定多个分类EMLOG文章列表,研究了好些时间没整明白,求人也不是个事,只好自己继续边看教程边测试,功夫不负有心人,最终给我整明白了,用这个SQL命令可以正确调用指定多个分类的EMLOG文章列表,蓝叶分享给有需要的站长们,把以下代码复制到模板的脚本文件中,设置好需要调用的分类ID号,在前台模板里写入调用代码就可以实现你想要的效果了。<?php function Get_newlogs($log_num) { $db = MySql::getInstance(); $sql = "SELECT gid,title,date,content,views FROM ".DB_PREFIX."blog WHERE type='blog' and hide='n' and sortid IN (1,2,3,4) ORDER BY `date` DESC LIMIT 0,$log_num"; $list = $db->query($sql); while($row = $db->fetch_array($list)){ ?> <li><a href="<?php echo Url::log($row['gid']); ?>"><?php echo $row['title']; ?></a></li> <?php } ?> <?php } ?> 说明:IN后面括号中的就是要调用的分类ID号,请自行更改你需要调用的分类ID号,中间用英文状态下的逗号隔开,前台模板调用在需要输出美容的地方复制<?php Get_newlogs(5);?>代码,代码中的5表示需要输出的文章列表条数。
2013年08月28日
6,766 阅读
0 评论
0 点赞
2013-07-28
简单快速修改zblog模板的重要代码
1、zblog的布局调整前面我们已经提到了清除 b_article-multi.html 模板和 b_article-single.html 模板中一些不重要的标签,其实在流量比较大的catalog.html 模板default.html 模板和single.html模板中也存在一些需要的没有或者不需要的多余的标签问题。我们可以在这三个文件的 <div id="divSidebar"> 代码下看到他们,这些就是导航的模块,如以下代码<div class="function" id="divCatalog"><h3><#ZC_MSG026#></h3><ul><#CACHE_INCLUDE_CATALOG#></ul></div>2、templates 文件夹是你修改最为多的地方catalog.html 修改zblog的分类、关键词索引页面的模板default.html 修改zblog的首页模板single.html 修改zblog的单页模板b_article-single.html 用于修改zblog的单页内容区模板b_article-multi.html 用户修改zblog首页及索引页的摘要说明部分控制以上五个文件是最为重要的文件,作为zblog修改的重点。其他的两个 search.html 和 tags.html 分别是搜索页、关键词首页的模板,这两个页面如果你需要可以修改,一般情况下,这两个页面的浏览量并不是很大。templates文件夹下还有不少文件,但其他的可能在你非常需要的时候才用得上(如想修改上下页、留言板区、导航区样式),这些将在以后我们逐步说明。修改这些文件的时候需要知道以下几个非常重要的标签,因为他关系到你的博客对搜索引擎的友好度,稍稍改动他们的位置都会对你的博客排名产生巨大影响,所以大家小心测试。<#ZC_BLOG_HOST#> 代表博客的域名或者根文件夹<#ZC_BLOG_TITLE#> 代表博客网站名称<#BlogTitle#> 代表单个文章的主标题3、修改title标签zblog默认的模板比较谦虚,很多皮肤也延续了这一观点,我们看代码<title><#ZC_BLOG_TITLE#><#ZC_MSG044#><#BlogTitle#></title>可以看到,它的意思是 “博客名称-文章标题”,而一般应该认为应该是,“文章标题-博客名称”。所以位置调换一下:<title><#BlogTitle#><#ZC_MSG044#><#ZC_BLOG_TITLE#></title>这个主要涉及到 single.html 单页模板。4、为zblog添加meta默认情况下,zblog是没有keywords和description标签的,因为google、百度都声称他们已经不看重日益滥用的keywords、description标签,同时如果滥用还可能遭到他们的惩罚,这也是之所以zblog官方模板没有启用这两个meta标签的重要原因。但是不看重并不意味只拒绝,所以如果你没有滥用的习惯和目的,那也可以尝试加入这两个标签。将首页模板 default.html 的title前添加两行<meta name="keywords" content="aa,bb,cc,dd" /><meta name="description" content="xx网站是做什么什么用的" />此处的aa,bb,cc,dd是你的整个网站讨论的关键词,不要太多,建议控制在十个以内,并且使用应为的逗号隔开,不要有重复关键字(关于关键字的选择我们以后讨论),这些内容非常重要。description标签是网站的描述,你可以描述一个不超过50字的介绍,切忌不要使用关键词的内容来堆砌,毫无意义。并且这里的内容尽量使用中文的标点符号,不使用英文的逗号,免得遭到百度、google的猜疑。将单页模板 single.html 也添加meta标签,但是要使用下述内容:<meta name="keywords" content="<#article/tagtoname#>" /><meta name="description" content="<#article/intro#>" />此处的 #article/tagtoname# 是调用页面的关键词, #article/intro# 是调用文章简介,如果你使用全文来作为简介请修改<meta name="description" content="<#article/intro#>" />为<meta name="description" content="<#article/tagtoname#>" />或者为<meta name="description" content=" <#BlogTitle#>" />5、zblog中的h1和h2标准的设计是h1做页面主要标题声明,h2做次要标题或者重点内容,以此类推,不过在zblog中h1的全站修饰是网站的名称,h2用来修饰文章正文标题,作为新建站,为了尽快将自己的站名中涉及到的关键词从搜索引擎那里导引过来,zblog的默认设定很好。不过当网站已经有了不少流量,特别是有了不少的外连接的时候,非常珍贵的h1建议给单页正文的标题,而网站名称关键词可以退为第二位,也就是将h1和h2换位。将single.html 模板中title下面的<h1 id="BlogTitle"><a href="<#ZC_BLOG_HOST#>"><#ZC_BLOG_NAME#></a></h1><h2 id="BlogSubTitle"><#ZC_BLOG_SUB_NAME#></h2>更换为<h2 id="BlogTitle"><a href="<#ZC_BLOG_HOST#>"><#ZC_BLOG_NAME#></a></h2><h3 id="BlogSubTitle"><#ZC_BLOG_SUB_NAME#></h3>而将 b_article-single.html 模板下的<h2 class="post-title"><#article/title#></h2>更换为<h1 class="post-title"><#article/title#></h1>如果你觉得h1后,文章的标题太大,可以修改css中的h1字号。(关于css的修改我们以后会专门有文章说明)6、让zblog快点再快点虽然经过zblog静态化页面处理,zblog已经非常快乐,但如果你想自己的Zblog再快点,或者你的用户量很大,有图建议你如下操作:精简一下 b_article-multi.html 模板里你自己认为不重要的标签,比如 作者 和 浏览数等。有图自己认为浏览数(非别在b_article-single.html模板和b_article-multi.html模板中)是影响响应速度的最重要的一个地方。因为当流量大了之后,频繁的访问access会造成瓶颈,这也是zblog中唯一没有被静态化的内容了(单页面中)减少图片的使用。图片不但会占用带宽,占用你的流量,还会因为被别人复制而占用你的IIS数,所以少用图片或者用小图片是zblog加速的另外一个非常值得注意的问题。少下载文件。文件下载不但会像图片一样会出现流量和IIS占用问题,还有一点就是少使用exe文件。因为国内很多空间商存在一些技术不够好或者干脆就是不法目的,他们可能因为疏忽或者故意,而是服务器感染某一些病毒(不是搞笑哦,是真的,因为这里面都有利益价值,特别是arp类和木马类),如果这些文件是exe而不是rar,被绑架的可能性大大增加,而搜索引擎会判断这些文件,并且遭遇到别人的投诉(不管是否恶意),页面甚至是网站都会有非常大的负面影响。所以如果有可能尽量少使用下载。7、你最需要的zblog插件如果你到zblog的官方插件里找,插件真的是很多,最必须的是什么呢?有图推荐给大家三个 列表插件(文章排行) Sitemaps 静态首页生成插件,这三个插件的用途简单给大家介绍下。列表插件(文章排行) :提供更好的文章导航效果,如果我们在步骤6中知道如何来加减<div>模块,那么这个列表可以让你的zblog页面非常友好,它可以提供相关文章、最新文章、点击率排行、留言排行、随机文章等多种可供选择的列表,虽然我们肯定不全部采用,但如果给你的页面增加两到三个这样的列表,可以让文章内容看起来更丰富。同时,因为这些列表基于script调用,对于你的页面外连接没有增加,对搜索引擎排名相当友好。Sitemaps :这是一个自动生成google sitemap的插件,对于google的索引非常友好,如果你开通了google的管理员工具,这个插件非常有用。静态首页生成插件:首页静态化的重要性是什么呢?大家已经讨论的非常多了。我想说的是,如果你的流量日志里发现直接点击数目比较大时,一定要静态化首页,因为可以节省非常多的因asp处理和调用access数据库而产生的速度、瓶颈和IIS占用问题。
2013年07月28日
4,937 阅读
0 评论
0 点赞