修改WordPress 文章内分页样式

最近写了一篇比较长的隐私文章,用到了wp的文章分页功能。却发现默认的分页的页面又小又难找。于是想修改wp的默认分页,网上找了下相关的代码基本都是下面的样子:

 '

',
    'link_before'       => '',
    'link_after'        => '',
    'next_or_number'    => 'next',
    'separator'         => ' | ',
    'nextpagelink'      => __( 'Next »', 'textdomain' ),
    'previouspagelink'  => __( '« Previous', 'textdomain' ),
);
 
wp_link_pages( $args );
?>

但是我尝试了上面的方法并没有任何的效果,通过wp_link_pages( $args );传送的参数没有生效。

Continue Reading

WordPress 优化404页面

wordpress主题自带的404页面过于简单,只是显示了一个page not found,左侧区域空荡荡的,与右侧的侧边栏搭配丑的一p。于是就尝试进行改造了一下,第一次改造在404页面加了下部的随机文章。代码如下:

<!-- 显示随机文章 -->
<h4 class="entry-title">
<?php esc_html_e( 'Random Posts' , 'olsen-light' ); ?>
</h4>
<div>
<?php           
                        $args = array( 'numberposts' => 20, 'orderby' => 'rand', 'post_status' => 'publish' );
                        $rand_posts = get_posts( $args );
                        foreach( $rand_posts as $post ) : ?>
    <li><a href="<?php the_permalink(); ?>"><?php the_title(); ?> - <?php the_modified_date(); ?></a></li>
<?php endforeach; ?>
</div>

Continue Reading

BuddyPress Theme Remove Sidebar

主体自带了buddypress插件,于是整体的就多了一个buddypress的成员页面,但是由于我的侧边栏比较长,那么这个页面看起来就非常的蛋疼,左侧的内容只有一点点,右边长的一p。于是就想改一下去掉侧边栏,大致搜了以下没有找到合适的插件,那就只能自己动手了。根据这篇文章的内容可以知道,影响页面的其实是page.php。那么直接对page.php动手,参考这篇文章的内容,可以创建一个子主题来实现相关功能,我没有安装插件也不想创建什么新的子主题了,直接在原始的文件上动手。解决问题的方案也比较简单,判断当前页面是不是buddypress相关的页面然后根据情况进行处理即可。
文章中提到了这么一个函数:bp_is_blog_page(),参考http://hookr.io/functions/bp_is_blog_page/的说明:

You can tell if a page is displaying BP content by whether the current_component has been defined.

Continue Reading

阿里云 EC2 CentOS 6.0 系统分区扩容

阿里云的虚拟主机磁盘空间满了,这个主要是用来放blog的,所以并没有其他的数据盘。所有的数据都是直接放到/dev/vda1磁盘下的,数据库也是在这个盘下。从阿里云的后台扩容了磁盘发现还需要登陆进行扩容,于是开始按照教程操作,事实证明给出的文档(https://help.aliyun.com/document_detail/25452.html?spm=a2c4g.11186623.6.788.666a3f87QwRXFB)里面方法比较蛋疼,对于扩展系统分区不大适用。 

后来发现貌似看的文档有问题,如果要扩展系统盘应该看这个https://help.aliyun.com/document_detail/111738.html?spm=5176.2020520101.0.0.44d34df5aZCEKE。 这个就尴尬了 smile ,没看好文档。

安装growpart

yum install cloud-utils-growpart

然后对系统分区进行扩容:

growpart /dev/vda 1

Continue Reading

WordPress 4.2.1 gravatar头像无法显示

升级wordpress 之后去按照以前的方法找服务器设置,发现找不到了。蛋疼啊,但是最近又有点忙,所以一直没管它,今天搜索了一下发现新的头像服务器函数已经移动到”\WordPress4.2.1\wp-includes\link-template.php”(3604,29): $url = sprintf( ‘http://%d.gravatar.com/avatar/%s’, $gravatar_server, $email_hash );这里来了,如下:

	if ( $email_hash ) {
		$args['found_avatar'] = true;
		$gravatar_server = hexdec( $email_hash[0] ) % 3;
	} else {
		$gravatar_server = rand( 0, 2 );
	}

	$url_args = array(
		's' => $args['size'],
		'd' => $args['default'],
		'f' => $args['force_default'] ? 'y' : false,
		'r' => $args['rating'],
	);

	$url = sprintf( 'http://%d.gravatar.com/avatar/%s', $gravatar_server, $email_hash );

	$url = add_query_arg(
		rawurlencode_deep( array_filter( $url_args ) ),
		set_url_scheme( $url, $args['scheme'] )
	);

修改也很简单,将上面的3604行修改为:

$url = sprintf( 'http://1.gravatar.com/avatar/%s', $email_hash );

那个服务器编号可以多试几个,测试的时候发现1是没有问题的,如果不能访问可以换2,3,4神马的。