除了cdn,shortcode等,余下归入杂项的扩展功能就是下面这些了。
根据主题不同进行删减,这些扩展代码也让本站变得比较稳定。
以下代码均源于网络
<?php
//add 禁用auto-embeds 插入视频时跳出预览/////////////////////////////////////////
remove_filter( 'the_content', array( $GLOBALS['wp_embed'], 'autoembed' ), 8 );
//add 禁用XML-RPC接口////////////////////////////////////////////////////
add_filter('xmlrpc_enabled', '__return_false');
//add 使用斜杠替换home_url()////////////////////////////////////////////////////
add_action( 'template_redirect', 'rw_relative_urls' );
function rw_relative_urls() {
if ( is_feed() || get_query_var( 'sitemap' ) ) //判断是否为feed页面或者sitemap页面
return;
$filters = array(
'post_link',
'post_type_link',
'page_link',
'attachment_link',
'get_shortlink',
'post_type_archive_link',
'get_pagenum_link',
'get_comments_pagenum_link',
'term_link',
'search_link',
'day_link',
'month_link',
'year_link',
);
foreach ( $filters as $filter )
{
add_filter( $filter, 'wp_make_link_relative' );
}
}
//add 强制jquery在底部载入/////////////////////////////////////
function ds_print_jquery_in_footer( &$scripts) {
if ( ! is_admin() )
$scripts->add_data( 'jquery', 'group', 1 );
}
add_action( 'wp_default_scripts', 'ds_print_jquery_in_footer' );
//add wp头部优化//////////////////////////////////////////
remove_action( 'wp_head', 'feed_links', 2 ); //移除feed
remove_action( 'wp_head', 'feed_links_extra', 3 ); //移除feed
remove_action( 'wp_head', 'rsd_link' ); //移除离线编辑器开放接口
remove_action( 'wp_head', 'wlwmanifest_link' ); //移除离线编辑器开放接口
remove_action( 'wp_head', 'index_rel_link' );//去除本页唯一链接信息
remove_action('wp_head', 'parent_post_rel_link', 10, 0 );//清除前后文信息
remove_action('wp_head', 'start_post_rel_link', 10, 0 );//清除前后文信息
remove_action( 'wp_head', 'wp_generator' ); //移除WordPress版本
remove_action( 'wp_head', 'rel_canonical' );
remove_action( 'wp_footer', 'wp_print_footer_scripts' );
remove_action( 'wp_head', 'wp_shortlink_wp_head', 10, 0 );
remove_action( 'template_redirect', 'wp_shortlink_header', 11, 0 );
add_action('widgets_init', 'my_remove_recent_comments_style');
function my_remove_recent_comments_style() {
global $wp_widget_factory;
remove_action('wp_head', array($wp_widget_factory->widgets['WP_Widget_Recent_Comments'] ,'recent_comments_style'));
}
//add 后台登录错误时发邮件给站长//////////////////////////////////////////
function wp_login_failed_notify()
{
date_default_timezone_set('PRC');
$admin_email = get_bloginfo ('admin_email');
$to = $admin_email;
$subject = '网站登录错误警告';
$message = '<p>网站(' . get_option("blogname") . ')有异常登录!</p>' .
'<p>请确定是您自己的登录失误,以防别人攻击!登录信息如下:</p>' .
'<p>登录名:' . $_POST['log'] . '<p>' .
'<p>登录密码:' . $_POST['pwd'] . '<p>' .
'<p>登录时间:' . date("Y-m-d H:i:s") . '<p>' .
'<p>登录IP:' . $_SERVER['REMOTE_ADDR'] . '<p>';
$wp_email = 'no-reply@' . preg_replace('#^www\.#', '', strtolower($_SERVER['SERVER_NAME']));
$from = "From: \"" . get_option('blogname') . "\" <$wp_email>";
$headers = "$from\nContent-Type: text/html; charset=" . get_option('blog_charset') . "\n";
wp_mail( $to, $subject, $message, $headers );
}
add_action('wp_login_failed', 'wp_login_failed_notify');
//add 修改登录页面logo//////////////////////////////////////////
function custom_loginlogo() {
echo'<style type="text/css"> h1 a {background-image: url('.get_bloginfo('template_directory').'/images/logo_login.jpg) !important; width:290px;} </style>';
}
add_action('login_head', 'custom_loginlogo');
//add 修改登录页面logo的链接//////////////////////////////////////
function custom_loginlogo_url($url) {
return 'http://www.inlojv.com';
}
add_filter( 'login_headerurl', 'custom_loginlogo_url' );
//add 显示网站运行的统计数据,如:运行天数、文章数量等等 ///////////////////////////////////////////
class widget_tongji extends WP_Widget {
function widget_tongji() {
$option = array('classname' => 'slide-box', 'description' => 'InLoJV-网站统计' );
$this->WP_Widget(false, 'InLoJV-网站统计', $option);
}
function widget($args, $instance) {
extract($args, EXTR_SKIP);
echo $before_widget;
$title = emptyempty($instance['title']) ? '最新评论' : apply_filters('widget_title', $instance['title']);
$time = emptyempty($instance['time']) ? '建站日期' : apply_filters('widget_count', $instance['time']);
echo $before_title . $title . $after_title;
echo '<ul class="tongji" style="border: 1px solid #E3E3E3; border-top: none;">';?>
<li style="color: #4c4c4c;line-height: 20px;display: block;border-bottom: 1px solid #E3E3E3;padding: 5px 10px 5px 10px;">文章总数:<?php $count_posts = wp_count_posts();echo $published_posts = $count_posts->publish;?>篇</li>
<li style="color: #4c4c4c;line-height: 20px;display: block;border-bottom: 1px solid #E3E3E3;padding: 5px 10px 5px 10px;">评论总数:<?php $count_comments = get_comment_count();echo $count_comments['approved'];?>条</li>
<li style="color: #4c4c4c;line-height: 20px;display: block;border-bottom: 1px solid #E3E3E3;padding: 5px 10px 5px 10px;">页面总数:<?php $count_pages = wp_count_posts('page'); echo $page_posts = $count_pages->publish; ?> 个</li>
<li style="color: #4c4c4c;line-height: 20px;display: block;border-bottom: 1px solid #E3E3E3;padding: 5px 10px 5px 10px;">分类总数:<?php echo $count_categories = wp_count_terms('category'); ?>个</li>
<li style="color: #4c4c4c;line-height: 20px;display: block;border-bottom: 1px solid #E3E3E3;padding: 5px 10px 5px 10px;">标签总数:<?php echo $count_tags = wp_count_terms('post_tag'); ?>个</li>
<li style="color: #4c4c4c;line-height: 20px;display: block;border-bottom: 1px solid #E3E3E3;padding: 5px 10px 5px 10px;">运行天数:<?php echo floor((time()-strtotime($time))/86400); ?> 天</li>
<?php
echo '</ul>';
echo $after_widget;
}
function update($new_instance, $old_instance) {
$instance = $old_instance;
$instance['title'] = strip_tags($new_instance['title']);
$instance['time'] = strip_tags($new_instance['time']);
return $instance;
}
function form($instance) {
$instance = wp_parse_args( (array) $instance, array( 'title' => '', 'count' => '' ) );
$title = strip_tags($instance['title']);
$time = strip_tags($instance['time']);
echo '<p><label>标题:<input id="'.$this->get_field_id('title').'" name="'.$this->get_field_name('title').'" type="text" value="'.attribute_escape($title).'" size="24" /></label></p>';
echo '<p><label>建站日期:<input id="'.$this->get_field_id('time').'" name="'.$this->get_field_name('time').'" type="text" value="'.attribute_escape($time).'" size="24" /></label></p>';
}
}
add_action('widgets_init', create_function('', 'return register_widget("widget_tongji");'));
//add 禁用后台某些项目加载 以加速后台打开速度 //////////////////////////////////////
function disable_dashboard_widgets() {
remove_meta_box('dashboard_recent_comments', 'dashboard', 'normal');//近期评论
remove_meta_box('dashboard_recent_drafts', 'dashboard', 'normal');//近期草稿
remove_meta_box('dashboard_primary', 'dashboard', 'core');//wordpress博客
remove_meta_box('dashboard_secondary', 'dashboard', 'core');//wordpress其它新闻
remove_meta_box('dashboard_right_now', 'dashboard', 'core');//wordpress概况
remove_meta_box('dashboard_incoming_links', 'dashboard', 'core');//wordresss链入链接
remove_meta_box('dashboard_plugins', 'dashboard', 'core');//wordpress链入插件
remove_meta_box('dashboard_quick_press', 'dashboard', 'core');//wordpress快速发布
}
add_action('admin_menu', 'disable_dashboard_widgets');
//add 禁用谷歌 Open Sans 等字体/////////////////////////////////////////////////
function remove_open_sans() {
wp_deregister_style( 'open-sans' );
wp_register_style( 'open-sans', false );
wp_enqueue_style('open-sans','');
}
add_action( 'init', 'remove_open_sans' );
//add 用户登录失败(错误)重定向到自定义页面///////////////////////////////////////
function my_front_end_login_fail($username){
// 获取提交数据的来源页面
$referrer = $_SERVER['HTTP_REFERER'];
// 如果是一个有效的来源,并且不是默认登录页面或后台管理页面
if(!emptyempty($referrer) && !strstr($referrer,'wp-login') && !strstr($referrer,'wp-admin')){
// 跳转到404页面
wp_redirect($referrer . '404.php');
exit;
}
}
add_action('wp_login_failed', 'my_front_end_login_fail');
//add 使用国内Gravatar头像服务器 /////////////////////////////////
function jv_get_avatar($avatar) {
$avatar = str_replace(array("www.gravatar.com","0.gravatar.com","1.gravatar.com","2.gravatar.com"),"gravatar.duoshuo.com",$avatar);
return $avatar;
}
add_filter( 'get_avatar', 'jv_get_avatar', 10, 3 );
//add 评论邮件回复通知访客 //////////////////////////////////
function comment_mail_notify($comment_id) {
$admin_email = get_bloginfo ('admin_email');
$comment = get_comment($comment_id);
$comment_author_email = trim($comment->comment_author_email);
$parent_id = $comment->comment_parent ? $comment->comment_parent : '';
$to = $parent_id ? trim(get_comment($parent_id)->comment_author_email) : '';
$spam_confirmed = $comment->comment_approved;
if (($parent_id != '') && ($spam_confirmed != 'spam') && ($to != $admin_email)) {
$wp_email = 'no-reply@' . preg_replace('#^www\.#', '', strtolower($_SERVER['SERVER_NAME']));
$subject = '您在 [' . get_option("blogname") . '] 的评论有了新回复';
$message = '
<div style="background-color:#fff; font-family: 微软雅黑;border:1px solid #999999; color:#111;border-bottom:8px solid #2279A9; -moz-border-radius:8px; -webkit-border-radius:8px; -khtml-border-radius:8px; border-radius:8px; font-size:13px; width:802px; margin:0 auto; margin-top:10px;">
<div style="background:#2279A9; width:100%; height:60px; color:white; -moz-border-radius:6px 6px 0 0; -webkit-border-radius:6px 6px 0 0; -khtml-border-radius:6px 6px 0 0; border-radius:6px 6px 0 0; ">
<span style="height:60px; line-height:60px; margin-left:30px; font-size:16px;"> 您在<a style="text-decoration:none; color:#fff;font-weight:600;"> 【' . get_option("blogname") . '】 </a>上的评论有回复啦!</span></div>
<div style="width:95%; margin:0 auto">
<p>' . trim(get_comment($parent_id)->comment_author) . ', 您好!</p>
<p>您在页面 <span style="color:#2279A9;font-weight:bold;">' . get_the_title($comment->comment_post_ID) . '</span> 的评论:<br />
<p style="background-color: #EEE;border: 1px solid #DDD;padding: 20px;margin: 15px 0;">'. trim(get_comment($parent_id)->comment_content) . '</p>
<p>' . trim($comment->comment_author) . ' 给你的回复:<br />
<p style="background-color: #EEE;border: 1px solid #DDD;padding: 20px;margin: 15px 0;">'. trim($comment->comment_content) . '</p>
<p>你可以点击 <a href="' . htmlspecialchars(get_comment_link($parent_id, array('type' => 'comment'))) . '">查看完整内容</a></p>
<p>欢迎再次来访 <a href="' . get_option('home') . '">' . get_option('blogname') . '</a></p>
<p>(此邮件由系统自动发出, 请勿回复)</p>
</div></div>';
$from = "From: \"" . get_option('blogname') . "\" <$wp_email>";
$headers = "$from\nContent-Type: text/html; charset=" . get_option('blog_charset') . "\n";
wp_mail( $to, $subject, $message, $headers );
}
}
add_action('comment_post', 'comment_mail_notify');
?>
本站文章除注明转载/出处外,均为本站原创或翻译。若要转载但请务必注明出处,尊重他人劳动成果。
转载请注明出处链接 : https://www.inlojv.com/2667.html

