WordPress3.1 就有的 文章形式(Post Formats) 到现在都3.3了,可完美完全支持的主题依旧屈指可数,至少在国人主题制作圈。

之前自己折腾的主题也是相当受样式限制,溜达 Tumblr 找到现在扒来的这一款,相当霸气外露!

要想重拾折腾滴基情,换主题决定是首选!间隔如此之久,咱们接着搞 Post Formats 起呗~

聊天,formats-chat。效果见上文: 《一天》

PHP核心代码如下(基础代码源自 SimpleDark 1.3 ):

//如要使用,请自行去除注释~
<?php
	$lines = preg_split("/[\r\n]+/", $post->post_content);  //php正则获取每行字符
?>
<?php 
if(is_array($lines)) {  //建立数组
	$i=2;  //增加个计数,为对话区分样式
	foreach($lines as $line) {
		if(trim($line) != '' )   //循环执行,并过来空白行
?>
	<p <?php if( $i%2 == 1 ){ echo 'class="even n'.$i.'"';}else {echo 'class="odd n'.$i.'"';}; ?>><span><?php echo $line;$i++ ?></span></p>
	//如果被2除余1添加class="even n$i",反之添加class="odd n$i",接着输出每行内容。
<?php
	}
}
?>

这儿我新增了计数$i,一是判断聊天奇偶,另外是隐藏部分对话。

接着上CSS核心代码:

.home .format-chat .odd,.home .format-chat .even,.archive .format-chat .odd,.archive .format-chat .even{display:none;}
.format-chat .odd.n2,.format-chat .odd.n4,.format-chat .odd.n6,.format-chat .even.n3,.format-chat .even.n5{display:block;}
/* 默认把聊天对话给隐藏,然后把前5句显示出来 */
.format-chat .odd span{float:left;margin: 0px 0 0 40px;background:#66bcc5;}
.format-chat .even span{float:right;margin:-10px 40px 0 0;background:#BDC866;}
/* 样式的主要区分就是这2个咯 */

然后,没然后了。写文章时选中”聊天“形式,每一行即一个人说的话。

懂也好不懂也好,个人认为这PHP代码还是值得Mark,SO,自我多情一个就分享咯~