2011-11-22 4 views

答えて

4

いいえ、それを行うEEタグはありません。独自のプラグイン、拡張モジュール、またはモジュールを作成する必要があります。しかし、それはかなり簡単です。

私の提案は、pluginを作成することです。

​​という名前のフォルダをexpressionengine/third_partyフォルダに作成します。タグを通じて()uniqid作成するには、非常に独自のプラグインが

<?php if (! defined('BASEPATH')) exit('No direct script access allowed'); 

$plugin_info = array(
    'pi_name'  => 'Uniqid', 
    'pi_version'  => '0.1', 
    'pi_author'  => 'John Doe', 
    'pi_author_url'  => 'http://example.org/', 
    'pi_description' => 'Returns uniqid() with parameters', 
    'pi_usage'  => Guid::usage() 
); 


class Guid { 

    public function __construct() 
    { 
     $this->EE =& get_instance(); 
    } 

    public function uniqid() 
    { 
     $prefix = $this->EE->TMPL->fetch_param('prefix'); 
     $more_entropy = (strtolower($this->EE->TMPL->fetch_param('more_entropy')) == "true") ? TRUE : FALSE; 

     return uniqid($prefix, $more_entropy); 
    } 

    public static function usage() 
    { 
     ob_start(); ?> 

     Simple use: 

    {exp:guid:uniqid} 

     Parameter use: 

    {exp:guid:uniqid prefix="yourprefix"} 
    {exp:guid:uniqid more_entropy="true"} 
    {exp:guid:uniqid prefix="yourprefix" more_entropy="true"} 
    <?php 
     $buffer = ob_get_contents(); 
     ob_end_clean(); 

     return $buffer; 
    }  
} 

あなたが行く:そのフォルダ内の
は、次の内容のpi.guid.phpというファイルを作成します。
使用ですか?

{exp:guid:uniqid prefix="yourprefix"} 
{exp:guid:uniqid more_entropy="true"} 
{exp:guid:uniqid prefix="yourprefix" more_entropy="true"} 

素晴らしいですか?
私はEEを愛しています...

+0

'$ more_entropy'は' fetch_param( 'more_entropy') 'にする必要があります。あなたは 'fetch_param( '接頭辞')'としてそれを持っています。 – Pinkie

+0

Theres - 私はそれを修正しました:) – Repox

0

一意のIDを出力する組み込みEEタグはありません。

関連する問題