2012-08-29 2 views
2

저는 Mura를 처음 사용하고 있으며 기존의 많은 코드를 활용하려고합니다. 기존 코드에 대한 액세스 권한이 필요한 많은 함수가있는 globalFunction.cfc 파일이 있습니다. 이전에는 항상 application.cfc를 전역 함수로 확장 했으므로 항상 여기에있었습니다. Mura를 사용하여 어디에 포함 시킬지 확실하지 않고 설치를 "업그레이드 안전"으로 유지하십시오.Mura를 사용하는 사람이라면 어떻게 globalFunctions.cfc를 안전하게 추가 할 수 있습니까?

모든 의견을 환영합니다.

답변

1

[사이트]/includes 폴더에 Application.cfc가 있습니다. 나는 당신이 globalFunction.cfc를 확장하기를 원한다고 생각합니다. 업데이트 안전합니다. 당신은 당신이 테마의 폴더에 이벤트 핸들러 또는 contentRenderer 파일에 귀하의 사이트를 통해 사용하고자하는 모든 기능을 넣을 수 있습니다

+0

제이슨, 나는 그것을 시도했지만 application.cfc를 실행하지 않는 것 같습니다. 그것은 showTrace 목록에 없으며 (의도적으로) 나쁜 코드를 넣으면 오류가 발생하지 않으므로 호출되지 않는 것이 확실합니다. – Lance

+1

아, App.cfc 만 보입니다. 어떤 상황에서는 불린다. 특히 뭔가가 해당 폴더에서 직접 실행될 때 특히 그렇습니다. 명백하게 템플릿은 해당 폴더에서 실행되지 않습니다 (템플릿이 포함되어 있음에도 불구하고). –

0

랜스. 이는 업데이트가 안전하며 사용 방법에 따라 표시 용으로 사용하고 기능 용으로 사용할 수 있습니다.

이벤트 핸들러 예 :

<!--- PAGE - Default ---> 
<cffunction name="onPageDefaultBodyRender" output="true" returntype="any"> 
    <cfargument name="$"> 
    <cfif $.getcontentID() neq "00000000000000000000000000000000001">#$.dspInclude('/themes/MYTHEME/display_objects/bodies/dsp_body_default.cfm')#</cfif> 
</cffunction> 

ContentRenderer 예 :

<cffunction name="removeLinks" returntype="string" access="public"> 
    <cfargument name="str" default="" required="true"> 

    <cfset str=reReplace(str, "<[[:space:]]*[aA].*?>(.*?)<[[:space:]]*/[[:space:]]*a[[:space:]]*>","\1","all") /> 

    <cfreturn trim(str) /> 
</cffunction> 

경우 여기에 이벤트 핸들러 그냥 다른 시체를두고는 내가 $를 사용하는 경우 contentRenderer 어떤 링크를 제거 홈 페이지에 .removeLinks (MYURLSTRING).

HTH