我如何为whmcs博客添加钩子

时间:2019-12-15 09:26:39

标签: php hook whmcs

我已经安装了whmcs,然后向whmcs添加了一个名为Simple Blog的插件。 我想添加一个whmcs挂钩,以便从数据库中获取图像。

我有PHP代码可以从数据库中获取图像,但是我不知道如何创建钩子以及钩子在哪里。

我可以在.tpl文件中使用已经可用的钩子,但是我不知道如何创建钩子。

我希望此代码挂入钩子,应该接受一个参数,即博客的ID 然后代码将返回图像 当前,该内核返回了图像,但它不是一个钩子,我无法在.tpl文件中使用它

$query = "SELECT image FROM mod_blog_posts WHERE id='$id'"; 
$result = mysql_query($query);

while ($data = mysql_fetch_array($result)) {
  $image = $data['image'];
}

请帮助

1 个答案:

答案 0 :(得分:0)

我通过使用smarty来完成工作,只需转到vendor / smarty / smarty / libs / plugins即可创建一个smarty插件

然后我在那里创建了一个文件,并将其命名为function.getblogimage.php

此文件中的代码为

<?php
/**
 * Smarty plugin
 *
 * @package    Smarty
 * @subpackage PluginsFunction
 */
/**
 * Smarty {getblogimage} function plugin
 * Type:     function
 * Name:     getblogimage
 * Purpose:  print out a blog image
 *
 * @author Kode Sensei
 *
 * @param array                    $params   parameters
 * @param Smarty_Internal_Template $template template object
 *
 * @return string|null
 */
function smarty_function_getimagealam($params, $template)
{

$query = "SELECT image FROM mod_blog_posts WHERE id=".$params[ 'id' ]; 
$result = mysql_query($query);

while ($data = mysql_fetch_array($result)) {
  $image = $data['image'];
  return $image;
 }
}

?>

现在,我可以在.tpl文件中使用此插件,例如 {getblogimage id = $ id} 它接受参数ID,并通过提供博客文章ID来检索博客图片。