WordPress文章多重排序的实现方法

在WordPress网站开发过程中,有时候我们需要对文章/自定义文章类别(这里统称为文章)进行一些自定义排序,以下是我常用的自定义排序输出的方法:

1
2
3
4
5
6
7
8
9
10
$myposts = get_posts( array( 
	'numberposts' => 50, 
	'post_type' => 'hotels', //自定义的文章类型
	'orderby' => 'meta_value', //按照自定义字段排序
	'meta_key' => 'hotel_country',//排序的自定义字段名为hotel_country
	'order' => 'ASC'
) );
foreach( $myposts as $post ) {
...
}

查看详细 »

WordPress后台定制-在自定义字段面板中调用媒体/图片上传对话框

在WordPress自定义字段面板中,有时候我们需要上传图片,或者附件,并且获取它的URL作为这个自定义字段的值。这个属于WordPress比较高级的后台定制了,但却是很常见的。很多插件都提供了解决方案,今天我把代码扒出来,可以直接用在主题的后台中。
把原本自定义字段的的input标签换成如下这段代码: 查看详细 »

WordPress文章分类、自定义分类、标签排序插件推荐

WordPress发展到当今的4.x版,居然还没有提供文章分类、标签等自定义排序的功能。也许开发WP的大佬们并不觉得这些排序是什么重要功能,亦或者这个功能的开发实在太过简单,被当作留给插件开发者们的小菜而一直没有加入WP的主程序中?言归正传,我已经在很多项目中接到自定义文章分类排序的需求了,这里介绍一下我使用的插件 – Custom Taxonomy Order NE
WordPress文章分类、自定义分类、标签排序插件推荐-Custom Taxonomy Order NE
查看详细 »

解决IE7下页面元素因浏览器渲染(重绘)Bug而不显示的问题

稍微有点经验的前端应该知道IE7-有一个经典的渲染问题,表现在对display为inline-block的元素的不友好上。我们也知道只要重新给这个元素单独宣布一条display:inline,就能解决问题。但今天我要说的不是这个,最近新完成的一个网站,在IE7下浏览,就有包括导航和热图这样的大块元素没有正常显示:
iexuanran

经过检查,发现这些没有正常显示的元素,都有一个共同的CSS属性- position:relative,导致这些元素在IE7中没有被正常的渲染到,就没有显示出来。百度了一下,这个问题归类为-IE重绘问题。当然并非所有position为relative的元素都不能在IE7中正常显示,实际情况要比我这里所指的复杂的多。由于布局的硬性需要(比如滚动图片的移动效果),使我没有办法不用relative属性,所以要解决在IE7中的渲染问题,就必须另外想办法。 查看详细 »

WordPress英文版切换为中文版步骤,附4.01简体中文语言包下载

一直都习惯用英文版的WordPress,原因是一直都去英文官网找插件和看文档,而且官网的英文原版也更新得较快,比如最近官网的英文版已经更新到4.1版了,而中文版目前还停留在4.01。不过有时候也会需要用中文版,比如要开放后台给不习惯英文界面的人…好在WordPress语言切换还是比较容易的。 查看详细 »

浅谈响应式瀑布流的实现方式

瀑布流主要应用在图片展示页面上。如果有一大批图片需要展示,原始图片尺寸不一致,又希望每张图片都能不剪裁,完整显示,那么就要给图片规定一个宽度,解放它们的高度。利用网页高度不限这个特性,充分利用页面的空间,尽可能的展示多的图片。瀑布流的实现方法挺多,但能做到响应式列数变化,自由布局的并不多。这次自己开发了一个作品集页面,正好研究一下响应式瀑布流的实现方法。

响应式瀑布流布局的思路

响应式瀑布流需要解决的问题:

1. 响应式多列:960px宽以上呈4列,750-960呈3列,400-750呈2列,400宽以下变成1列;
2. 由于需要做响应式,那么每块的宽度就不固定,导致高度更加不可能固定。后端输出的时候,图片(块)的高度本来就是未知的,要用JS实时取到它们的高度,以便调整布局。
3. 异步加载:页面拖到最低端的时候加载更多,这个很常见。 查看详细 »

WordPress网站在Azure环境下无法使用SESSION?

今天又在刚从Linux搬到Windows Azure的WordPress网站们身上发现一个毛病,那就是自己写的SESSION都不起作用了。这直接导致了网站的登录功能没法使用。能支持PHP,我就不信Azure会连SESSION这种最基本的东西都不支持。搜索了一下相关问题,有的说要设置cache目录;还有说要修改web.config文件,加一堆XML节点…其实都在绕弯路,最后被我找到一个WP插件(好吧,我承认太没技术含量了Orz),名叫Simple Session Support。安装了一下这个插件问题就得到了解决,网站能正常登录,并且把用户信息读取到SESSION中了。

打开Simple Session Support插件的安装目录,原来只有一个php文件,而且很小。它提供了两个建立SESSION的函数,但都没有加到钩子里去。反而倒是有一个初始启动SESSION的小函数吸引了我的注意。原来在Azure下需要执行一下session_start()命令来才能开始使用SESSION。 查看详细 »