问题
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