php表单的输出,php – Joomla输入表单字段输出
我想做的就是給joomla輸入表單提供基本的bootstrap樣式:
some text
我使用帶有less的mixin將樣式應用于現有的輸入類
//input form fields
.validate-email{
.form-control;
}
我正在重寫com_users / remind.php以進行其他html更改.
但是有一些PHP代碼會混淆輸出.這是com_users / remind.php的原始代碼,我將其覆蓋:
<?php foreach ($this->form->getFieldset($fieldset->name) as $name => $field) : ?>
<?php echo $field->label; ?>
<?php echo $field->input; ?>
我不需要標簽(見上文),所以我刪除了這些行.我更改了所有可用的類,并為輸入字段類創建了一個mixin(參見上文).
這就是現在的樣子:
<?php foreach ($this->form->getFieldset($fieldset->name) as $name => $field) : ?>
<?php echo $field->input; ?>
但是該代碼中的周圍php行正在做一些奇怪的事情,我不明白.
輸出如下所示:
所以第一個表單組輸出就是我想要的.第二個表單組 – 輸出通常是輸入字段的相應標簽.我需要擺脫這第二個表單字段輸出.
我要么擺脫那個“foreach”而不創建任何php錯誤,但我不知道如何更改php代碼.
或者我需要為E-Mails加載那個輸入字段而沒有所有額外的東西,但我不知道該怎么做.
我嘗試通過添加創建自己的字段覆蓋
JForm::addFieldPath(JPATH_THEMES . '/MyTemplate/html/fields');
并將remind.php復制到該文件夾??.
但它沒有加載我的自定義remind.php.
文檔提到了覆蓋getLabel
public function getLabel() {
return '' . parent::getLabel() . '';}
但我無法弄清楚如何在getInput上使用它
如果有人有正確的php行或其他更簡單的解決方案,請告訴我.我已經有一段時間的反復試驗了,而且我的想法已經不多了.
謝謝,拉爾斯
解決方法:
最后,我找到了添加自定義字段和渲染單個輸入字段的方法(感謝Brian).這使我可以完全控制joomla輸入表單字段的輸出,它是防更新的,所有文件都在MyTemplate文件夾中.基本上它是一個覆蓋.我正在顯示在Joomla / components / com_users / remind中找到的remind.php的整個過程:
>我通過復制所有文件在我的template-folder中創建com_users-override
joomla / components / com_users / views / remind to
的Joomla /模板/ MyTemplate的/ HTML / com_users /提醒
>我將這些行添加到remind.php:
$this-> form-> reset(true); //重置視圖加載的表單xml
$this-> form-> loadFile(dirname(__ FILE__).DS.“remind.xml”); //使用FILE常量加載我自己的remind.xml版本
現在我可以在同一個文件夾中使用自己的remind.xml.
>我將remom.xml從joomla / components / com_users / models / forms復制到Joomla / templates / MyTemplate / html / com_users / remind
我在xml中添加以下行:
hint="This is the placeholder-text"
class="form-control"
整個文件看起來像這樣:
hint="My Placeholder"
class="form-control"
description="COM_USERS_FIELD_REMIND_EMAIL_DESC"
label="COM_USERS_FIELD_REMIND_EMAIL_LABEL"
required="true"
size="30"
validate="email"
/>
name="captcha"
type="captcha"
label="COM_USERS_CAPTCHA_LABEL"
description="COM_USERS_CAPTCHA_DESC"
validate="captcha"
/>
當然你可以添加你想要的任何行.
>現在我更改了我的Joomla / templates / MyTemplate / html / com_users / remind – 文件夾中的default.php.這些是Brian建議的類似行(抱歉代碼格式化不起作用):
電子郵件
形狀配合> getInput( ‘電子郵件’); ?>
就這樣.
html輸出如下所示:
好的,我知道這篇文章中的代碼沒有正確顯示,但我無法弄清楚如何修復它,我不允許發布截圖.對不起.
標簽:php,forms,joomla
來源: https://codeday.me/bug/20190830/1768515.html
總結
以上是生活随笔為你收集整理的php表单的输出,php – Joomla输入表单字段输出的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: matlab减,matlab-线性代数
- 下一篇: php数字截取2位小树,数据结构-PHP