修改WordPress 文章内分页样式

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

<?php
$args = array (
    'before'            => '
<div class="page-links-XXX"><span class="page-link-text">' . __( 'More pages: ', 'textdomain' ) . '</span>',
    'after'             => '</div>
',
    'link_before'       => '<span class="page-link">',
    'link_after'        => '</span>',
    'next_or_number'    => 'next',
    'separator'         => ' | ',
    'nextpagelink'      => __( 'Next &raquo', 'textdomain' ),
    'previouspagelink'  => __( '&laquo 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

更新Blog服务器配置

从14年开始使用这台vps服务器,最近发现jetpack出了问题。貌似是更新php版本之后,新的php-xml模块没有安装,尝试更新相关模块的时候首先要更新epel-release,问题是更新了epel-release之后yum命令就挂了,提示找不到xz!

于是问题就演化成了先有鸡还是先有蛋的问题,如果要解决这个问题那么:

  1. 删除epel-release 7,安装6,然后yum安装xz,xz安装成功之后更新epel-release
  2. 直接编译安装xz:
    wget https://sourceforge.net/projects/lzmautils/files/latest/download?source=typ_redirect  
    mv download\?source\=typ_redirect xz.gz tar -zxvf xz.gz  
    make &make install
Continue Reading