私はWHMCS 7.xを使用していますが、Smarty PHPはすでに有効になっています。WHMCSのサービスリストにカスタムフィールドを含めるにはどうすればよいですか?
私は、製品の名前の下にある製品(clientareaproducts.tpl)の下に、すでに存在し、IPアドレス(カスタムフィールドのスマートなPHPコードは{ $ service_custom_fields.4})の代わりに$ service.domainを入力します。
<td><strong>{$service.product}</strong>{if $service_custom_fields.4}<br /><a href="http://{$service_custom_fields.4}" target="_blank">{$service_custom_fields.4}</a>{/if}</td>
で
<td><strong>{$service.product}</strong>{if $service.domain}<br /><a href="http://{$service.domain}" target="_blank">{$service.domain}</a>{/if}</td>
:私は次の行を交換しようとした
{include file="$template/includes/tablelist.tpl" tableName="ServicesList" filterColumn="3"}
<script type="text/javascript">
{if $orderby == 'product'}
table.order([0, '{$sort}'], [3, 'asc']);
{elseif $orderby == 'amount' || $orderby == 'billingcycle'}
table.order(1, '{$sort}');
{elseif $orderby == 'nextduedate'}
table.order(2, '{$sort}');
{elseif $orderby == 'domainstatus'}
table.order(3, '{$sort}');
{/if}
table.draw();
jQuery('#tableLoading').addClass('hidden');
});
</script>
<div class="table-container clearfix">
<table id="tableServicesList" class="table table-list hidden">
<thead>
<tr>
<th>{$LANG.orderproduct}</th>
<th>{$LANG.clientareaaddonpricing}</th>
<th>{$LANG.clientareahostingnextduedate}</th>
<th>{$LANG.clientareastatus}</th>
<th class="responsive-edit-button" style="display: none;"></th>
</tr>
</thead>
<tbody>
{foreach key=num item=service from=$services}
<tr onclick="clickableSafeRedirect(event, 'clientarea.php?action=productdetails&id={$service.id}', false)">
<td><strong>{$service.product}</strong>{if $service.domain}<br /><a href="http://{$service.domain}" target="_blank">{$service.domain}</a>{/if}</td>
<td class="text-center" data-order="{$service.amountnum}">{$service.amount}<br />{$service.billingcycle}</td>
<td class="text-center"><span class="hidden">{$service.normalisedNextDueDate}</span>{$service.nextduedate}</td>
<td class="text-center"><span class="label status status-{$service.status|strtolower}">{$service.statustext}</span></td>
<td class="responsive-edit-button" style="display: none;">
<a href="clientarea.php?action=productdetails&id={$service.id}" class="btn btn-block btn-info">
{$LANG.manageproduct}
</a>
</td>
</tr>
{/foreach}
</tbody>
</table>
<div class="text-center" id="tableLoading">
<p><i class="fa fa-spinner fa-spin"></i> {$LANG.loading}</p>
</div>
:以下
は clientareaproducts.tplファイルですしかし、不運にも、動作しません。
スマートなPHPコードは電子メールテンプレートで動作しますが、ここでは動作しません。
また、ドメインを製品に追加して次の行を試しましたが、カスタムフィールドも表示されません。
<td><strong>{$service.product}</strong>{if $service.domain}<br /><a href="http://{$service_custom_fields.4}" target="_blank">{$service_custom_fields.4}</a>{/if}</td>
私は私が考えたので、ドメインが空だったとドメインを追加することによって、それはその後、trueにsettedされるだろうし、それが希望の場合
{elseif $orderby == 'domainstatus'}
domainstatus をfalseにsettedされるだろうということでしたカスタムフィールドを表示しますが、動作しません。
誰かが私を助けてくれたら本当に感謝しています。
よろしくお願いいたします。
こんにちは、すべての最初の、ご返信いただきありがとうございます。フックセクションにコードを追加し、.tplファイル内の '{$ customFields [$ service.id]} 'に置き換えましたが、動作しません。製品名の下にIPアドレスが表示されません。おそらく、ドメインが設定されていないと、この行と関係があります。{elseif $ orderby == 'domainstatus'} 'は無効になっていますか? –
{$ service.product}の直後に追加する場合は、今のところ追加しないようにしてください。動作していることを確認してください。 – wesamly