Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/joomla/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 具有不同页面的joomla组件_Php_Joomla_Components - Fatal编程技术网

Php 具有不同页面的joomla组件

Php 具有不同页面的joomla组件,php,joomla,components,Php,Joomla,Components,我正在为我的joomla站点创建一个组件(没有MVC),我希望有2个可以显示的php页面 因此,我在site文件夹中有myprog.php和myprog2.php。为了能够选择myprog.php将其分配给菜单,我在/site/views/myprog/tmpl文件夹中创建了一个default.xml文件/ 它包括: <?xml version="1.0" encoding="utf-8"?> <metadata> <layout title="CO

我正在为我的joomla站点创建一个组件(没有MVC),我希望有2个可以显示的php页面

因此,我在site文件夹中有myprog.php和myprog2.php。为了能够选择myprog.php将其分配给菜单,我在/site/views/myprog/tmpl文件夹中创建了一个default.xml文件/

它包括:

<?xml version="1.0" encoding="utf-8"?>
<metadata>
        <layout title="COM_MYPROG_DEFAULT_TITLE">
                <message>
                        <![CDATA[COM_MYPROG_DEFAULT_DESC]]>
                </message>
        </layout>
</metadata>

如何将其用于第二页,以便选择第二页将其分配给菜单

谢谢。

我会使用MVC:-) 如果你坚持, 这里有一篇文章介绍如何在“创建实例”菜单中添加参数:

它包括:

<?xml version="1.0" encoding="utf-8"?>
<metadata>
        <layout title="COM_HELLOWORLD_HELLOWORLD_VIEW_DEFAULT_TITLE">
                <message>COM_HELLOWORLD_HELLOWORLD_VIEW_DEFAULT_DESC</message>
        </layout>
        <fields
                name="request"
                addfieldpath="/administrator/components/com_helloworld/models/fields"
        >
                <fieldset name="request">
                        <field
                                name="id"
                                type="helloworld"
                                label="COM_HELLOWORLD_HELLOWORLD_FIELD_GREETING_LABEL"
                                description="COM_HELLOWORLD_HELLOWORLD_FIELD_GREETING_DESC"
                        />
                </fieldset>
        </fields>
</metadata>

在view.html.php中,使用if语句显示相应的页面。

您需要在同一位置创建一个与default.xml相同的文件。它的名称也将是布局名称。例如,它的名称是blog.xml。当您创建此菜单时,它将自动在url中添加
layout=blog

由于不使用MVC,所以可以在get values中检查布局变量,并相应地工作

若您使用MVC模式,那个么您只需要在视图中设置布局并创建tmpl文件,该文件必须以布局名称开头。 例如:默认情况下的tmpl文件和博客布局如下

default.php => blog.php
default_edit.php => blog_edit.php

谢谢你的回答,我会按照你的第一个答案去MVC。
$jinput = JFactory::getApplication()->input;
$pagetoshow = $jinput->get('pagetoshow', 1, 'INT' );
default.php => blog.php
default_edit.php => blog_edit.php