第一次尝试 php Joomla!插入

First attempt php Joomla! plugin

php 和插件构建的新功能。我是一名前端人员,但需要学习在 Joomla 中构建模板。我有一个小程序可以让您在函数 onContentAfterTitle.

中插入和更改一些文本
class plgContentmyplugin extends JPlugin
{
public function onContentAfterTitle($context, $article, $params,  $limitstart)
    {
        if ($this->params->get('alt-text')) {
            return $this->params->get('alt-text');
        } else {
            return "<p>Hello World!</p>";
        }

现在我了解到 XML 决定管理控制面板中的后端选项。然后使用 php 来显示它。

我希望能够扩展此插件,主要用于学习目的。我有一些 XML 显示选项来更改字体颜色和大小。我只是有点不确定 php 以及我应该调用哪个函数来实现它。我应该使用其他参数之一吗?例如$context 还是 $article?任何帮助将不胜感激。

<field name="font-size" type="list" default="12" description="What size font should the message use?" label="Font size">
                <option value="8">8px</option>
                <option value="12">12px</option>
                 <option value="16">16px</option>
            </field>

同样,我的目的是扩展我的 php 知识,并最终能够构建其他人可以使用的模板。我已经弄清楚了如何 assemble 和 破解 模板,只需对已经存在的样式进行样式设置,这完全可以接受,但我不确定最终用户需要多少改变和他们需要的选择。这确实需要在后端构建。

如果我从你的问题中理解正确,你想将参数添加到你的插件后端并使用它在插件输出中代表的任何内容?

如果是这样,第一步是添加参数XML,即:

<field type="radio" name="isenabled" label="Is enabled?" class="btn-group btn-group-yesno" default="1">
                <option value="1">JYes</option>
                <option value="0">JNo</option>
            </field>

对于大多数参数,您的字段将位于 "basic" 字段集中。 有关 Joomla 字段类型的更多信息:https://docs.joomla.org/Standard_form_field_types

然后,在您的插件模板文件中,您只需以任何您想要的方式获取参数。在我的示例中,我在 if 语句中使用 "isenabled" 参数:

if ($this->params->get("isenabled")) { ... }

如果我改用

echo $this->params->get("isenabled);

我只想取回参数在后端设置的值;在这种情况下,是或否。

这也适用于模块。