Browse Category: Wordpress

提供wordpress教程_wordpress建站教学_wordpress建站教程_wordpress新手教程

WordPress 博客非插件代码实现AJAX评论效果

AJAX效果即是提供评论的时候使用页面局部刷新的效果而不是整个页面刷新,实现这个效果虽然可以直接使用WordPress博客插件,但是很多WordPress博主是代码流,对于博客插件能少用则少用,能不用那就更好,所以博客吧介绍下非插件实现WordPress博客评论AJAX效果。

非插件AJAX效果方法:

下载文件comments-ajax.js和文件comments-ajax.php,博客吧提供打包下载comments_ajax,把这两个文件上传至主题的根目录
登陆自己的Wordpress博客后台,点击“外观”选项卡下的编辑选项进入主题编辑页面
选择编辑header.php文件,找到代码

  1. < ?php if (is_singular()) wp_enqueue_script(‘comment-reply’); ?>

把上面的代码替换为以下代码

  1. <?php if (is_singular()){ ?>
  2. <script type=“text/javascript” src=“http://ajax.googleapis.com/ajax/libs/jquery/1.2.3/jquery.min.js”></script>
  3. <script type=“text/javascript” src=“<?php bloginfo(‘template_directory’); ?>/comments-ajax.js”></script>
  4. <?php } ?>

更新文件,这样就完成了不用插件实现wordpress博客评论的AJAX效果了
提示:部分主题的header.php文件没有该行代码,那就找到

<?php wp_head(); ?>
在该代码前面(上面)添加上面的代码即可。
提醒:AJAX功能实现代码和文件非博客吧原创,原出处不详,但该文章是博客吧原创。

禁止安装、升级或编辑WordPress主题和插件

  1. WordPress后台安全真的不容忽视,有些闲得慌的朋友看上了某些站点的主题或插件,于是乎想尽各种办法登录别人的后台,企图盗走主题或插件。昨天在群里就有朋友在议论这个事,网站也被不法登录,郁闷的很。
  2. 一般破解后台管理员登录以后,默认情况下,他们是可以直接看到和编辑你的WordPress主题或插件的某些源代码的,甚至他们可以安装某些插件(比如文件夹打包插件、备份插件等)来打包你网站的文件。
  3. 那么,我们如何禁止所有用户(包括最高权限的管理员)安装、升级或编辑主题和插件呢?
  4. 禁用WordPress主题和插件的在线编辑器
  5. 在网站根目录下的 wp-config.php 文件添加下面代码即可:
  6. //禁止在线编辑主题和插件
  7. define( ‘DISALLOW_FILE_EDIT’, true );
  8. 禁止升级/安装/编辑WordPress主题和插件
  9. 同样在网站根目录下的 wp-config.php 文件添加下面代码即可:
  10. //禁止安装/升级/编辑主题和插件
  11. define(‘DISALLOW_FILE_MODS’,true);
  12. 提示:
  13. 1.添加后面第二种代码以后,就连主题的设置选项都不能修改,所以请先设置好主题的选项后再添加代码。
  14. 2.如果添加了第二种代码,就没必要添加第一种了。
  15. 3.如果你安装了某些可以备份网站文件的插件,请自己想办法隐藏那些插件,不让所有用户(包括最高权限的管理员)进行操作,否则,别人还是可以通过这类插件获取你网站的文件的。
  16. 4.此类方法只能一定程度上增加WordPress的安全性,但是如果人家连 wp-config.php 都可以访问到,那上面的一切都是枉然

wordpress一些常用的常量

ABSPATH :网站根目录的绝对路径
WP_CONTENT_DIR : wp-content目录的磁盘路径
WP_CONTENT_URL :wp-content目录的URL
TEMPLATEPATH : 当前主题所在目录路径
STYLESHEETPATH : 当前主题样式所在目录路径
WP_PLUGIN_DIR : 定义插件目录的磁盘路径
WP_PLUGIN_URL : 定义插件目录的URL
WP_LANG_DIR : 自定义语言包的路径
WP_POST_REVISIONS : 关闭 WordPress 版本修订功能
AUTOSAVE_INTERVAL 定义自动保存的时间

怎样用sql语句调用wordpress某分类下的所有信息

  1. <div class=“mb-a left dInline mb-dl”>  
  2.           
  3.         <?php    
  4.         //用sql语句调用某分类下的所有信息,$CID为分类id  
  5.         $CID=1;  
  6. global $wpdb;    
  7. $rs = $wpdb->get_results(“select * from wp_posts,wp_term_relationships,wp_term_taxonomy where ID=object_id and wp_term_relationships.term_taxonomy_id = wp_term_taxonomy.term_taxonomy_id and post_type=’post’ and post_status = ‘publish’ and wp_term_relationships.term_taxonomy_id = $CID and taxonomy = ‘category’ order by ID asc limit 0,3” );    
  8. //p($rs);  
  9. foreach($rs as $cat)    
  10. {?>    
  11.             <div class=“mbDiv”>  
  12.   
  13.                     <img src=“<?php  
  14.                     //正则匹配内容中的图片 
  15.                     $post_thumbnail_src = ”; 
  16.         ob_start(); 
  17.         ob_end_clean(); 
  18.         $output = preg_match_all(‘/<img.+src=[\'”]([^\’“]+)[\'”].*>/i’, $cat->post_content, $matches);  
  19.         $post_thumbnail_src = $matches [1] [0];     
  20.           
  21.                     echo $post_thumbnail_src; ?>” width=”186” height=”132” />  
  22.                     <p>  
  23.                         &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span><?php echo $cat->post_title;?></span>  
  24.                         &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span> <?php echo $cat->post_excerpt;?> </span>  
  25.                     </p>  
  26.                   
  27.             </div>  
  28.               
  29.             <?php }?>  
  30.              
  31.         </div>  

wordpress调用二级分类列表[多个子分类]

  1. <div class=“box_m”>
  2. <ul class=“ui_nav3”>
  3. <?php
  4. $args=array(
  5. ‘hide_empty’=>’0‘,
  6. ‘hierarchical’=>1,
  7. ‘parent’=>7,
  8.   );
  9. $categories=get_categories($args);
  10. foreach($categories as $category)
  11. {
  12. ?>
  13.     <li><a target=“_self” class=’cls126′ title=“color box”
  14.         href=“<?php echo get_category_link( $category->term_id )?>”><?php echo $category->name ;?></a>
  15.     <ul>
  16.     <?php
  17. $args1=array(
  18. ‘hide_empty’=>’0‘,
  19. ‘hierarchical’=>1,
  20. ‘parent’=>$category->term_id,
  21.   );
  22.     $categories2=get_categories($args1);
  23.   foreach($categories2 as $category1)
  24.     {
  25.     ?>
  26. <li><a target=“_self” class=’cls140′ title=“”
  27.             href=“<?php echo get_category_link( $category1->term_id )?>”> <?php echo $category1->name ;?></a></li>
  28.         <?php }?>
  29. </ul>
  30.     </li>
  31.     <?php   } ?>
  32. </ul>
  33. </div>

wordpress按文章点击次数排序(调用热门文章)

  1. <?php
  2. $args = array(
  3.     ‘meta_key’ => ‘views’,
  4.     ‘orderby’   => ‘views’,  // 须 WordPress 2.8 及以上版本
  5.     ‘order’ => ASC,
  6.     ‘cat’=>1,  //分类id
  7.     ‘showposts’ => 5,
  8. );
  9. $arms = array_merge($args, $wp_query->query);
  10. query_posts($arms);
  11. if(have_posts()) : while(have_posts()) : the_post();
  12.  ?>
  13.   <div class=“box”>
  14.  <div class=“title”><a href=“<?php the_permalink()?>” title=“” class=“more”>more</a><?php the_title(); ?></div>
  15.  <div class=“info”>
  16.  <div class=“imgs”><img src=“<?php echo post_thumb_src();?>” title=“” width=“148” height=“146”  /></div>
  17.  <div class=“text”>
  18.     <?php //echo wp_trim_words(the_content(),50,”); 
  19.      // the_content();
  20. echo wp_trim_words(get_the_content(),450,);
  21.     ?>
  22.     </div></div>
  23. </div>
  24. <?php endwhile; ?>
  25. <?php else : ?>
  26. <p>暂无文章显示</p>
  27. <?php endif; ?>

WordPress站外调用论坛最新帖子

重点:前提是Wordpress和Discuz共用一个数据库,在functions.php中写入以下php代码
  1. function get_bbs($arg,$num){ //$arg = fid,$num = 显示数量
  2. global $wpdb;
  3. $result=$wpdb->get_results(“SELECT * FROM bbs_forum_post where fid=”.$arg.” AND subject!=”   and invisible=0 ORDER BY dateline DESC LIMIT 0,”.$num);
  4. //下面的内容请根据自身情况修改改
  5. $site_url = “http://bbs.admin122.com”;//网站地址
  6. foreach($result as $result){
  7.      $title = “$result->subject”;
  8.      $tid =“$result->tid”;
  9.      $time = date(‘Y-m-d H:i:s’,“$result->dateline”);//发表时间
  10.      $post_url = $site_url.“/thread-“.$tid.“.html”;//根据帖子URL格式修改(我的格式:http://bbs.admin122.com/thread-64.html)
  11.     echo “<li><a href=’$post_url’ title=’$title’>”.$title.“</a></li>”;
  12. }
  13. }

在wp模板中调用方法:

  1. <?php get_bbs(2,10)  ?>
  2. 显示fid为“2”的版块下最新十篇帖子。

在织梦模板中调用二级wordpress博客最新方法实例

客套话不多说啦,直接上实战,新建立1个php文件,名字为list.php,在list.php文件中写上如下代码并上传到织梦网站根目录:

  1. <?php
  2. define(‘WP_USE_THEMES’, false);
  3. include_once(‘./blog/wp-load.php’);
  4. query_posts(‘showposts=5&orderby=date’);
  5. ?>
  6. <ul class=“list”>
  7.   <?php while (have_posts()): the_post(); ?>
  8.   <li> <a href=“<?php the_permalink(); ?>” target=“_blank”><?php echo  iconv(“utf-8”,“gb2312//IGNORE”,get_the_title()); //iconv为编码转换函数,如果主站编码和你博客数据库编码一致可省略,直接用get_the_title()即可 ?></a> </li>
  9.   <?php endwhile; ?>
  10. </ul>

在要调用的织梦网站模板比如footer.htm中写上如下代码:

  1. <style type=“text/css”>
  2. .aaa{border:1px solid #ccc; width:988px; height:170px; margin:0 auto;}
  3. .list{width:443px; height:150px;overflow:hidden;zoom:1float:left;padding-left: 45px;}
  4. .list li{width:250px;padding:5px}
  5. ul.list  li { list-style:none; line-height:22px; }
  6. </style>
  7. <div class=“aaa” >
  8. {dede:php}
  9. $url=“http://www.jlfangshen.com/list.php”;
  10. echo file_get_contents( $url );
  11. {/dede:php}

以上代码适用于 织梦主站和二级博客站使用不同数据库的情况,如果你的织梦主站和二级博客站用的是同一个数据库,那么直接用织梦的标签或织梦的sql即可调用,实例如下:

  1. {dede:sql sql=“SELECT * FROM wp_posts where post_status = ‘publish’ and post_type=’post order by post_date desc limit 0,5”}
  2. <li> <a href=“[field:guid/]” target=“_blank”>[field:post_title /]</li>
  3. {/dede:sql}

也可以使用下面的代码调用:

  1. {dede:sql sql=“SELECT id as post_id,post_title as post_title,post_type,post_date FROM wp_posts where post_status = ‘publish’ and post_type=’post’ order by post_date desc limit 0,5”}
  2. <a href=’wp所在的目录/?p=[field:id/]’>[field:post_title /]</a>
  3. {/dede:sql}

wordpress用户登陆注册核心代码

wordpress虽然主要用在博客网站上,但是经过调整也是完全可以用作cms资讯类网站中,对于资讯网站用到的最多的功能肯定就是用户登陆注册了,今天来给大家分享一下wp用户登陆注册的知识,下面代码中我已经表明了要注意的地方了,以下就是wordpress用户登陆注册的核心代码

  1. <?php
  2.             //current_user_can()wp自带判断登陆用户的权限
  3.              if (!(current_user_can(‘level_0’))){ ?>
  4.                 <form action=“<?php echo get_option(‘home’); ?>/wp-login.php” method=“post” class=“wpuserform”>
  5.                     欢迎来到<?php bloginfo(name) ?>
  6.                     用户名 <input type=“text” name=“log” id=“log” class=“user_log” title=“用户名” value=“” size=“20” />
  7.                     密码 <input type=“password” name=“pwd” id=“pwd” class=“user_pwd” title=“密码” value=“” size=“20” />
  8.                     <input type=“submit” name=“submit” id=“login” title=“登录” value=“登录” />
  9.                     <?php if (get_option(‘users_can_register’)) { ?><a href=“<?php echo site_url(‘wp-login.php?action=register’, ‘login’) ?>”>  立即注册</a><?php }?>
  10.                     <label id=“rememberlb” for=“rememberme”><input name=“rememberme” id=“rememberme” type=“checkbox” checked=“checked” value=“forever” />  自动登陆 </label>
  11.                     <input type=“hidden” name=“redirect_to” value=“<?php echo $_SERVER[‘REQUEST_URI’]; ?>” />
  12.                      <a href=“<?php echo get_option(‘home’); ?>/wp-login.php?action=lostpassword”>  找回密码</a>
  13.                 </form>
  14.                     <!–user_identity –>
  15.             <?php } else { global $user_identity$user_level; ?>
  16.                 欢迎您, <strong><?php echo $user_identity ?></strong>!
  17.                 <?php if (get_option(‘users_can_register’)) { ?><a href=“<?php bloginfo(‘siteurl’);?>/wp-admin/profile.php”>[个人中心]</a><?php }?>
  18.                 <a href=“<?php echo wp_logout_url( get_permalink() ); ?>”>[退出]</a>
  19.             <?php }?>

wordpresss实现带头像的最新评论列表实例

wordpress默认的最新评论显得太单调了,也不是很美观,并且也不能按照我们的需求列表显示最新评论的内容,今天分享给大家一段修改方便的带有头像的最新评论列表代码,添加方法如下:

1、打开需要显示最新评论列表的文件(一般在网站的侧边栏sidebar.php中);

2、在合适的位置添加以下代码:

  1. <?php   
  2. $show_comments = 8; //评论数量   
  3. $my_email = get_bloginfo (‘admin_email’);    
  4. $i = 1;   
  5. $comments = get_comments(‘number=50&status=approve&type=comment’);    
  6. foreach ($comments as $rc_comment) {   
  7.     if ($rc_comment->comment_author_email != $my_email) {   
  8.         ?>   
  9.         <li><?php echo get_avatar($rc_comment->comment_author_email,30); ?><a href=“<?php echo get_permalink($rc_comment->comment_post_ID); ?>#comment-<?php echo $rc_comment->comment_ID; ?>”><?php echo mb_strimwidth(strip_tags(apply_filters(‘convert_smilies’, $rc_comment->comment_content)), 0, 34,” &raquo;”); ?></a>Post:<?php echo $rc_comment->comment_date; ?></li>   
  10.         <?php   
  11.         if ($i == $show_commentsbreak;    
  12.         $i++;   
  13.     }    
  14. }    
  15. ?>  

3、修改样式用于符合当主题风格;

4、保存文件并上传覆盖。

这样就大功告成了,代码调用avatar头像,如果填写的邮箱没有设置avatar头像,会调用wordpress默认评论头像。如果你不想在侧边栏的评论列表中显示作者自己的评论,可以找以上代码中找到:

  1. $comments = get_comments(‘number=50&status=approve&type=comment’);   

并修改为以下代码:

  1. $comments = get_comments(‘number=50&status=approve&type=comment&user_id=0’);