763 字
4 分钟
WordPress知识笔记
通过简码显示访客IP地址
-
打开主题编辑器
-
选择function.php文件
-
插入以下代码
// 获取访客IP地址function get_the_user_ip() {if ( ! empty( $_SERVER['HTTP_CLIENT_IP'] ) ) {//check ip from share internet$ip = $_SERVER['HTTP_CLIENT_IP'];} elseif ( ! empty( $_SERVER['HTTP_X_FORWARDED_FOR'] ) ) {//to check ip is pass from proxy$ip = $_SERVER['HTTP_X_FORWARDED_FOR'];} else {$ip = $_SERVER['REMOTE_ADDR'];}return apply_filters( 'wpb_get_ip', $ip );}add_shortcode('show_ip', 'get_the_user_ip'); -
在需要的地方添加“简码”模块,输入\[show_ip]即可
显示网站运行时间
- 打开主题编辑器
- 选择function.php文件
- 插入以下代码
// 运行时间 // 设置时区 date_default_timezone_set('Asia/Shanghai'); /** * 秒转时间,格式 年 月 日 时 分 秒 * * @author Roogle * @return html */ function getBuildTime(){ // 在下面按格式输入本站创建的时间 $site_create_time = strtotime('2020-02-28 08:00:00'); $time = time() - $site_create_time; if(is_numeric($time)){ $value = array( years => 0, days => 0, hours => 0, minutes => 0, seconds => 0, ); if($time >= 31556926){ $value[years] = floor($time/31556926); $time = ($time%31556926); } if($time >= 86400){ $value[days] = floor($time/86400); $time = ($time%86400); } if($time >= 3600){ $value[hours] = floor($time/3600); $time = ($time%3600); } if($time >= 60){ $value[minutes] = floor($time/60); $time = ($time%60); } $value[seconds] = floor($time); echo '<span class=btime>'.$value['years'].'年'.$value['days'].'天'.$value['hours'].'小时'.$value['minutes'].'分</span>'; }else{ echo ''; } }
- 调用:
<?php getBuildTime(); ?>
感谢小林博客的知识分享
通过代码获取并显示访客IP和城市
- 用主题文件编辑器打开function.php
- 在空行处插入以下代码
//显示访客所在地(php)function nxsg_getip(){ if (getenv("HTTP_CLIENT_IP") && strcasecmp(getenv("HTTP_CLIENT_IP"), "unknown")) { $ip = getenv("HTTP_CLIENT_IP"); } else if (getenv("HTTP_X_FORWARDED_FOR") && strcasecmp(getenv("HTTP_X_FORWARDED_FOR"), "unknown")) { $ip = getenv("HTTP_X_FORWARDED_FOR"); } else if (getenv("REMOTE_ADDR") && strcasecmp(getenv("REMOTE_ADDR"), "unknown")) { $ip = getenv("REMOTE_ADDR"); } else if (isset ($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR'] && strcasecmp($_SERVER['REMOTE_ADDR'], "unknown")) { $ip = $_SERVER['REMOTE_ADDR'];} else { $ip = "unknown";} return $ip;}function nxsg_getLocation($ip= ''){empty($ip) && $ip = nxsg_getip();if($ip=="127.0.0.1") return "本机地址";$api = "https://api.vore.top/api/IPdata?ip=$ip";$json = file_get_contents($api);$arr = json_decode($json,true);$city= $arr["ipdata"]["info2"];$province = $arr["ipdata"]["info1"];if($city ==""){return $province;}return $city;}
- 调用: 显示IP地址
<?php echo nxsg_getip() ?>
显示城市<?php echo nxsg_getLocation() ?>
解决多域名绑定同一个wordpress后部分文件无法加载的情况
修改wp_config.php文件,插入以下代码 define( \'WP_CONTENT_URL\', \'/wp-content\');
显示网页加载时间 function.php文件插入以下代码
//页面加载时间自动检测 function wp_page_speed() { date_default_timezone_set( get_option( \'timezone_string\' ) ); $content .= \'页面加载用时\'; $content .= timer_stop( $display = 0, $precision = 2 ); $content .= \' s\'; echo $content; }
调用:页面加载用时timer_stop(1); ? s
感谢回忆大大的分享
文章按“最后修改时间”排序显示
修改index.php
文件,在<?php if ( have_posts() ) : ?>
前插入<?php query_posts('orderby=modified'); ?>
解决更改固定链接后无法打开文章的问题
在站点的NGINX配置文件里加上以下内容
location /{try_files $uri $uri/ /index.php?$args;}
rewrite /wp-admin$ $scheme://$host$uri/ permanent;
WordPress网站迁移
-
使用插件
一站式WP迁移
,作者是ServMask,两边都装这个插件,然后导出+导入即可,真心赞。如果导出的文件过大,不能导入,可以编辑站点目录下的.htaccess
文件,增加以下代码:php_value upload_max_filesize 128Mphp_value post_max_size 128Mphp_value memory_limit 256Mphp_value max_execution_time 300php_value max_input_time 300 -
自行导出导入数据库和网站目录,不太建议,虽然理论上可行,但是遇到问题可能性也挺大的