gpt4 book ai didi

Joomla 组件未出现在菜单项类型中

转载 作者:行者123 更新时间:2023-12-04 14:17:38 24 4
gpt4 key购买 nike

我只是按照关于如何创建“完美”MVC joomla 组件的 joomla 教程进行操作。但是,我的问题是我还不知道如何将它分配给菜单。我以为当我选择“菜单项类型”时我的组件就会出现,但我的组件不在此列表中。我对 Google 进行了一些研究,但找不到答案……我是否必须创建 metadata.xml 文件或类似文件?
提前感谢您的回答!

最佳答案

要为您的组件创建“ View ”,您必须创建一些 xml 文件。
在组件前端部分的模板文件夹中(通常类似于 /components/com_yourcomponent/views/someview/tmpl ),如果您有一个名为 default.phpform.php 的模板,您可以创建一个 default.xml 文件和一个 form.xml 文件让管理员可以使用这些菜单项。
您可以查看其他组件以查看这些 xml 文件的结构,但是您应该在里面放的是:

1)四个 View 的名称和描述
2) 用户可以从管理员那里更改的参数(它像模块/插件参数一样工作)
3)您还可以为该菜单项设置“隐藏”请求变量。这意味着这些变量将被添加到该特定菜单项中的请求中,但用户将无法更改其值。

这是一个组件的完整示例(Joomla 1.7):

    <?xml version="1.0" encoding="utf-8"?>
<metadata>
<layout title="COM_AGMTAGS_TAG_VIEW_DEFAULT_TITLE">
<message>COM_AGMTAGS_TAG_VIEW_DEFAULT_DESC</message>
</layout>
<fields name="request" addfieldpath="/administrator/components/com_agmtags/models/fields">
<fieldset name="request">
<field name="tag_id" type="agmtag"
label="COM_AGMTAGS_TAG_FIELD_NAME_LABEL"
description="COM_AGMTAGS_TAG_FIELD_NAME_DESC"
/>
</fieldset>
</fields>
<fields name="params">
<fieldset name="basic" label="COM_AGMTAGS_TAG_OPTIONS">
<field name="layout_type" type="hidden" default="blog" />
<field name="show_tag_name" type="list"
label="COM_AGMTAGS_SHOW_TAG_NAME"
description="COM_AGMTAGS_SHOW_TAG_NAME_DESC"
>
<option value="">JGLOBAL_USE_GLOBAL</option>
<option value="0">JHIDE</option>
<option value="1">JSHOW</option>
</field>
<field name="show_tag_description" type="list"
description="COM_AGMTAGS_SHOW_TAG_DESCRIPTION_DESC"
label="COM_AGMTAGS_SHOW_TAG_DESCRIPTION_LABEL"
>
<option value="">JGLOBAL_USE_GLOBAL</option>
<option value="0">JHIDE</option>
<option value="1">JSHOW</option>
</field>
<field name="items_per_page" type="text" default="" />
<field name="container_class" type="text" default="agmtags-list" />
</fieldset>
</fields>
</metadata>

我希望它有帮助!

关于Joomla 组件未出现在菜单项类型中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8673154/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com