WordPress不用插件实现funtion的各种功能




为WordPress默认编辑器TinyMCE增加额外的按钮

为WordPress默认编辑器TinyMCE增加额外的按钮 

将下面代码添加到你的主题functions.php模版文件中:

  1. function enable_more_buttons($buttons) {
  2. $buttons[] = 'hr';
  3. $buttons[] = 'del';
  4. $buttons[] = 'sub';
  5. $buttons[] = 'sup';
  6. $buttons[] = 'fontselect';
  7. $buttons[] = 'fontsizeselect';
  8. $buttons[] = 'cleanup';
  9. $buttons[] = 'styleselect';
  10. $buttons[] = 'gogo_page';
  11. $buttons[] = 'anchor';
  12. $buttons[] = 'backcolor';
  13. return $buttons;
  14. }
  15. add_filter("mce_buttons_3", "enable_more_buttons");

上面的代码默认是加到编辑器工具栏的第一行,也可以加到第二或另起一行,用下面的代码替换上面代码中最后一句。

添加到第二行:

  1. add_filter("mce_buttons_2", "enable_more_buttons");

单独另起一行:

  1. add_filter("mce_buttons_3", "enable_more_buttons");

通过上述方法将隐藏的按钮显示出来,使TinyMCE编辑器功能得到增强,基本可满足大部分人的需求。

添加字体:

将如下代码加到当前主题的 functions.php 模板文件中:

  1. function custum_fontfamily($initArray){
  2.    $initArray['font_formats'] = "微软雅黑='微软雅黑';宋体='宋体';黑体='黑体';仿宋='仿宋';楷体='楷体';隶书='隶书';幼圆='幼圆';";
  3.    return $initArray;
  4. }
  5. add_filter('tiny_mce_before_init', 'custum_fontfamily');

WordPress默认TinyMCE编辑器并没有选择字体功能,所以还需要把下面代码也一同加到 functions.php 模板文件中:

  1. function enable_more_buttons($buttons) {
  2. $buttons[] = 'styleselect';
  3. $buttons[] = 'fontselect';
  4. return $buttons;
  5. }
  6. add_filter("mce_buttons""enable_more_buttons");

适用于WordPress 4.0,之前版本未试。

 自动设置第一张图片为特色图片
function autoset_featured() {
global $post;
$already_has_thumb = has_post_thumbnail($post->ID);
if (!$already_has_thumb) {
$attached_image = get_children( "post_parent=$post->ID&post_type=attachment&post_mime_type=image&numberposts=1" );
if ($attached_image) {
foreach ($attached_image as $attachment_id => $attachment) {
set_post_thumbnail($post->ID, $attachment_id);
}
}
}
} //end function
add_action('the_post', 'autoset_featured');
add_action('save_post', 'autoset_featured');
add_action('draft_to_publish', 'autoset_featured');
add_action('new_to_publish', 'autoset_featured');
add_action('pending_to_publish', 'autoset_featured');
add_action('future_to_publish', 'autoset_featured');

屏蔽后台页脚版本信息

  1. function change_footer_admin () {return '';}
  2. add_filter('admin_footer_text', 'change_footer_admin', 9999);
  3. function change_footer_version() {return '';}
  4. add_filter( 'update_footer', 'change_footer_version', 9999);

屏蔽后台左上LOGO

  1. function annointed_admin_bar_remove() {
  2.         global $gogo_admin_bar;
  3.         /* Remove their stuff */
  4.         $gogo_admin_bar->remove_menu('wp-logo');
  5. }
  6. add_action('gogo_before_admin_bar_render', 'annointed_admin_bar_remove', 0);

默认情况下用户注册后,系统会自动将注册的用户名、随机密码和登录地址发到用户的注册邮箱中,默认发件人为:wordpress<wordpress@zmingcx.com>,当你想将站长常用的邮件地址随注册通知邮件一起告知注册者,却发现wordpress后台并没有提供相关的设置选项,下面的一段代码可以让你自定义WordPress默认电子邮件名称和地址。

将以下代码添加到当前主题functions.php中:

  1. add_filter('gogo_mail_from', 'new_mail_from');
  2. add_filter('gogo_mail_from_name', 'new_mail_from_name');
  3. function new_mail_from($old) {
  4.  return '邮箱地址';
  5. }
  6. function new_mail_from_name($old) {
  7.  return '发件人姓名';
  8. }

修改其中的邮箱地址和发件人姓名。

通过本文的代码可以改变鼠标悬停在WordPress登录页面标志时的提示文字。

将下面的代码粘贴到你的主题 functions.php 文件。

  1. function  custom_login_title() {
  2.         return 'Your desired text';
  3. }
  4. add_filter('login_headertitle', 'custom_login_title');

修改第2行的提示文字。

调用显示特色图像还可以使用另一种方法:

如果你认为将特色图像调用代码加到主题模板主循环中看上去会很乱,可以将下面的代码添加到主题functions.php 文件中:

  1. // 特色图像
  2. add_filter('the_content', 'set_featured_image_from_attachment');
  3. function set_featured_image_from_attachment($content) {
  4.      global $post;
  5.      if (has_post_thumbnail()) {
  6.           // 显示特色图像
  7.           $content = the_post_thumbnail() . $content;
  8.      } else {
  9.           // 获取和设置特色图像 
  10.           $attachments = get_children(array(
  11.                'post_parent' => $post->ID,
  12.                'post_status' => 'inherit',
  13.                'post_type' => 'attachment',
  14.                'post_mime_type' => 'image',
  15.                'order' => 'ASC',
  16.                'orderby' => 'menu_order'
  17.           ));
  18.           if ($attachments) {
  19.                foreach ($attachments as $attachment) {
  20.                     set_post_thumbnail($post->ID, $attachment->ID);
  21.                     break;
  22.                }
  23.                // 显示特色图像
  24.                $content = the_post_thumbnail() . $content;
  25.           }
  26.      }
  27.      return $content;
  28. }

这段代码基本原理与上面的相同 ,除了使用get_children过滤the_content(),而不是get_posts()。

going

我还没有学会写个人说明!

暂无评论

相关推荐

数据库优化小窍门及全站优化

刚用wordpress的朋友细心一点可能会发现,每当当发表或编辑一篇文章,保存有十几个草稿版本的时候,会增加很多垃圾数据,无形之中增大数据库压力,wordpress本身就有反映慢等缺点,对于用户体验来说有一定影响。目前 ...

影响网站优化收录的因素大盘点

网站优化的收录问题,一直是SEOer比较关心也时常为此头疼的问题。百度关键词排名,很重要的一个指标就是网站收录量。网站收录量高与内容质量高,更新规律,域名时间久等因素有关,但是还有一些其他因素在影响着优化 ...

解决登陆wordpress后台无法登录问题

解决登陆wordpress后台无法登录问题 博客安装好了之后,点击登录,却页面显示空白。这是为什么呢? 试着谷歌了一下,找到了下面三个原因: 插件不兼容问题 wordpress博客出现莫名其妙的问题,大部分都是因为不兼容插 ...

wordpress 自动获取文章第一张图片做为特色图片

wordpress 自动获取文章第一张图片做为特色图片 如标题所示 这期带来的是特色图片自动生成代码 该代码能获取文章的第一张图片 然后将此图片存放到本地空间并设置为特色图片 相比其他只能获取本站图片的生成代码 这代 ...

关注公众号,进入小程序