在 Components/com_content/models/article.php 中有一个名为 storeVote 的函数,它存储 0 到 5 分的投票。这是该函数的第一行:
if ( $rate >= 1 && $rate <= 5 && $pk > 0 )
我为 Joomla 2.5 编写的插件可以存储从 0 到 5 和 0 到 10 的投票,所以我需要将该行修改为:
if ( $rate >= 1 && $rate <= 10 && $pk > 0 )
安装插件时自动。
我该怎么做?
提前致谢。
P.D.
这是我需要在Joomla中实现的代码,但我不知道如何实现它,有帮助吗?
$searchString='if ( $rate >= 1 && $rate <= 5 && $pk > 0 )';
$replaceString='if ( $rate >= 1 && $rate <= 10 && $pk > 0 )';
$fh = fopen("article.php", 'r+');
$file = file_get_contents('article.php');
$file = str_replace($searchString, $replaceString, $file);
fwrite($fh, $file);
fclose($fh);
一种解决方案是编写一个内容插件,该插件挂钩 onContentPrepare() 方法,以便在渲染之前根据需要更改内容。 请务必注意您的插件相对于其他“内容”插件的顺序位置,因为如果不考虑这可能会对预期行为产生不利影响。