如何解决如何删除具有变量的特定文本字符串 文档和函数参考
我正在使用 wordpress 网站并想删除或替换一些文本。这是来自我无法更改输出的插件的内容(至少从我所有的尝试来看)。
以括号为例;
(文本:date1–date2)
(文本:Feb-09-Feb-12)
这两个日期是可变的,因为它们会一直变化。有没有办法可以设置通配符来说明 data1 和 data2 中的任何内容,用 X 替换字符串 date1-date2 或完全删除整个字符串“(The Text: date1–date2)”。
是否有可以添加到我的主题 function.PHP 文件中的函数?
或者作为替代使用 css。此文本位于一个 div 中,我可以将其设置为 diaply:none 但在其中我需要另一个 div 来显示。我的想法是删除文本,如上所述。同样,这是来自插件的内容,我无法更改输出(至少从我的所有尝试来看)。我尝试了可见性,但它留下了文本所在的空间。
如何在设置为 display:none 的 div 中显示某些内容?
所以
<div style="display:none">
<div>
display something
</div>
</div>
感谢您的帮助
解决方法
您不能在设置为 sizeof
的元素中显示某些内容。您可以尝试将元素的 display: none;
设置为 0,然后使用 font-size
选择器将您的文本添加到 :after
并将 content
设置回可读的内容:
font-size
div { font-size: 0; }
div:after { font-size: 16px; content: "This Text is shown"; }
或者,这是一个有点“锤击苍蝇”的解决方案,但使用 template_redirect
钩子,您可以打开 Output Buffering 并在内容上运行 preg_replace()
缓冲区,这是一种我喜欢称之为“运行时查找和替换”的技术。
<div>(The Text: date01-date02)</div>
文档和函数参考
功能 | 链接描述 |
---|---|
add_action( 'template_redirect','global_find_replace',99 );
function global_find_replace(){
ob_start( function( $buffer ){
$text = 'Your Text Here';
$buffer = preg_replace('/\(The Text: .*\)/',$text,$buffer );
return $buffer;
});
}
|
Fires before determining which template to load. |
template_redirect |
Perform a regular expression search and replace |
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。