玩命加载中qwq

WordPress小工具内嵌PHP代码

  • 2016-05-31
  • 7,558
  • 4

wordpress的”文本”小工具默认是不支持内嵌PHP的,这就限制了很多新奇的玩法。
开启小工具内嵌PHP!贴上代码!
在你的主题目录下的function.php内加入一句

add_filter('widget_text', 'php_text', 99);
function php_text($text) {
if (strpos($text, '<' . '?') !== false) {
ob_start();
eval('?' . '>' . $text);
$text = ob_get_contents();
ob_end_clean();
}
return $text;
}

保存上传即可。

:)不知道你注意到了我博客右边工具栏没~那个”树莓派运行状态一览”就是用小工具内嵌PHP做的~
不多说,来贴上它的代码

<?php
//温度
$temp = exec("cat /sys/class/thermal/thermal_zone0/temp");
$temp = '树莓派现在温度: <strong>' . $temp/1000 . '°C</strong>';
echo $temp . '<br>';

//运行时间
$str = @file("/proc/uptime");
$str = explode(" ", implode("", $str));
$str = trim($str[0]);
$min = $str / 60;
$hours = $min / 60;
$days = floor($hours / 24);
$hours = floor($hours - ($days * 24));
$min = floor($min - ($days * 60 * 24) - ($hours * 60));
if ($days !== 0) $uptime = $days."天";
if ($hours !== 0) $uptime .= $hours."小时";
$uptime .= $min."分钟";
echo '树莓派已运行时间: <strong>'.$uptime .'</strong><br>';

//内存
$str = @file("/proc/meminfo");
$str = implode("", $str);
preg_match_all("/MemTotal\s{0,}\:+\s{0,}([\d\.]+).+?MemFree\s{0,}\:+\s{0,}([\d\.]+).+?Cached\s{0,}\:+\s{0,}([\d\.]+).+?SwapTotal\s{0,}\:+\s{0,}([\d\.]+).+?SwapFree\s{0,}\:+\s{0,}([\d\.]+)/s", $str, $buf);
preg_match_all("/Buffers\s{0,}\:+\s{0,}([\d\.]+)/s", $str, $buffers);
$memTotal = round($buf[1][0]/1024, 1);
$memFree = round($buf[2][0]/1024, 1);
$memBuffer = round($buffers[1][0]/1024, 1);
$memCached = round($buf[3][0]/1024, 1);
$memUsed= $memTotal-$memFree;
echo '内存使用情况: <strong>'.$memUsed.'M/'.$memTotal.'M'.'</strong><br>';
echo '内存占比: <strong>'.round($memUsed/$memTotal*100, 2).'%</strong>';
?>

使用方法:在后台管理界面 外观->小工具 里的”文本” 小工具里粘贴此代码。
然后拖动到右边。

需要注意的是,这段PHP可能只适用于 树莓派 .理论上来说其他Linux也是可以的,Windows下的PHP应该不行。

灌水吐槽区(登录QQ有头像!)

你必须 登录 才能发表灌水吐槽区(登录QQ有头像!).