use joomla com_media image selection in my custom component

北慕城南 提交于 2020-04-11 18:27:23

问题


hi i want to use com_media image selection in my own component. the link is:

index.php?option=com_media&view=images&tmpl=component&
e_name=smallimage

the image goes to editor while i want it's address go to

<input class="inputbox" type="text" name="smallimage" id="smallimage" size="40" 
maxlength="255" value="<?php echo $row->smallimage; ?>" title=
"<?php echo JText::_('SMALLIMAGETIP' ); ?>" />

i am using joomla 1.5

any suggestion?

thanks


回答1:


If you're using Joomla 1.6 the easy way is let Joomla do all the work for you. How?

First you need to include in you xml form (/model/forms/YOURFORM.xml) something like that...

<field name="imageurl" type="media" directory="CUSTOMDIRECTORY?"
                hide_none="1" label="COM_YOURCOMPONENT_IMG_LABEL"
                size="40"
                description="COM_YOURCOMPONENT_IMG_DESCRIPTION" />

Haven't you got a getForm() in your model?

public function getForm($data = array(), $loadData = true)
    {

        // Get the form.
        try {
            //throw new Exception(JText::_('JLIB_FORM_ERROR_NO_DATA'));
            $form = $this->loadForm('com_kfiles', 'files');
        } catch (Exception $e) {
            echo "e";
            echo 'Caught exception: ',  $e->getMessage(), "\n";
        }

        if (empty($form)) {
            return false;
        }


        return $form;
    }

In your view (/views/xxxx/view.html.php) you need to load your form

$this->form = $this->get('Form');

Finally you only need to print the element in the template wherever you want.

echo $this->form->getLabel('imageurl'); 
echo $this->form->getInput('imageurl');

Bye




回答2:


Not straight forward, but you can have work around as mentioned here - Joomla Forum



来源:https://stackoverflow.com/questions/5510904/use-joomla-com-media-image-selection-in-my-custom-component

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!