为wordpress主题添加点击加载更多功能:jQuery+Ajax+php+mysql

在开发wordpress主题模板时,客户可能需要各种各样的功能,比如:本章所要讲到的“点击加载更多”。其实,让wordpress主题实现“点击加载更多”,并不是一件复杂的事,但也不是一件简单的事,说它简单,因为它的实现并不算难,说它复杂,因为它会用到很多方面的知识:jQuery、Ajax、php、mysql,当然,还要用到html和css。下面,我们一起来看看如何为wordpress主题添加点击加载更多功能吧。

点击加载更多的步骤:前台点击 => Ajax传递参数到php处理 => 进数据库 => php读取数据 => Ajax返回数据

实现步骤如下:

第一步:前台代码

<div class="box">
 <?php query_posts('posts_per_page=5&caller_get_posts=1'); ?>
 <?php while (have_posts()) : the_post(); ?>
 <li>
 <a target="_blank" href="<?php the_permalink(); ?>" title="<?php the_title(); ?>" class="title"><?php the_title(); ?></a>
 </li>
 <?php endwhile; wp_reset_query(); ?>
 </div>
 <li class="hot">加载更多</li>

上面代码中的php 代码在点击前先显示了5篇文章。

第二步:jQuery + Ajax 代码

$(function(){
 var num = 5;//初始化从第几篇开始点击加载
 var numm = 3; //每点击一次加载多少篇
 $(".hot").click(function(){
 $.post( //使用Ajax 的 post方法
 "/wordpress/wp-content/themes/twentyfifteen/restart/get.php",//php文件路径
 { numb:num}, //传递参数:从第几篇开始
 function(response,status,xhr){ //回调函数,返回数据
 $(".box").html( $(".box").html() + response);
 });
 num +=numm; //num 累加
 });
 });

第三步:php 处理文件代码

require("config.php"); //引用数据库链接文件
$num = $_POST["numb"]; //接收 AJAX 传递过来的数字:从第几篇开始
//下面是读取数据库数据
$sql = "select ID,post_title,guid from wp_posts order by ID desc limit ".$num.",3";
$result = mysql_query($sql);

while($row = mysql_fetch_array($result)){
 echo '<li><a href="'.$row["guid"].'">'.$row["post_title"].'</a></li>';
 echo "<br>";
 }

mysql_close($conn); //关闭数据库

第四步:数据库链接文件代码:

//获取当前文件所在目录
$gen=$_SERVER['DOCUMENT_ROOT'];
require_once("$gen/wp-config.php");
// 方式二 结束

//链接mysql服务器 开始
$connection = mysqli_connect(DB_HOST, DB_USER, DB_PASSWORD);
mysqli_select_db($connection, DB_NAME);

通过上面这4步骤,我们就为wordpress主题添加了“点击加载更多”功能。当然,我这里只是简单实现了它的功能,具体前台显示样式你可以根据自己的需求来深入修改。

未经允许不得转载:哈勃私语 » 为wordpress主题添加点击加载更多功能:jQuery+Ajax+php+mysql

本文共1554个字 创建时间:2018年1月9日12:15   

分享到:更多 ()