有朋自远方来,不亦乐乎。
侧边栏文本小工具的延伸
原创 橘子书  16 Sep/27 1.01K A+

最近几天在变更备案信息,所以就索性关站。

现在可以说一句:我胡汉三回来啦!

言归正传吧,关站的这段时间我没去折腾代码,不过在某天夜里,突然想起文本,觉得用得好的话,省下很多担忧。

很多时候,作为一名合格的wp博主,喜欢折腾是常态。毕竟适当的折腾有利于咱们保持火热的激情。

前阶段我写了几个难登大雅之堂的教程,都是涉及侧边栏。

这个时候有童鞋可能就会问了:‘我的主题如果更新,所有的更改岂不是被覆盖了,重新来多麻烦,做修改记录也麻烦。’

然后吧,我想了下,或许文本小工具可以帮得上忙。

众所周知,文本小工具可以运行txt、html等代码,但仅此而已根本满足不了我们好折腾的心,于是就诞生增强文本小工具,可以支持PHP、JavaScript、短代码等代码的运行。

想实现侧边tgbs、博主简介,却又懒得去改动自身主题文件的童鞋们,可以去后台找找看有没有增强文本小工具。

如果有那就好办了,直接将我分享的教程代码悉数扔到增强文本小工具里面即可。

这里需要注意的是js跟css在php里面的写法,可不能直接扔。以下是它们在php的正确写法:

<style type="text/css">
css代码
</style>

<script type="text/javascript">
js代码
</script>

以侧边栏tabs为例,效果如下(也就是龙砚庭博客):

如果没有也不用慌,度娘一下有很多实现方法,下面我分享一个最简单的方法。

不用额外添加什么增强文本小工具,直接让我们的文本小工具可以运行php代码就行了。

将以下代码扔到函数文件(如functions.php):

//实现侧边栏文本工具运行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和短代码
add_filter('widget_text', 'do_shortcode');
add_filter('widget_text','execute_php',100);
function execute_php($html){
if(strpos($html,"<"."?php")!==false){  ob_start();  eval("?".">".$html);
$html=ob_get_contents();
ob_end_clean();
}
return $html;
}

然后就没然后了,人是活的,所以功能跟用途也是活的,就看使用者如何去用……

END!

阅读全文

该文章还没有任何评论,你来说两句吧.

发表评论

莫慌,小狮子正在努力加载评论...