API15

Difference between revisions of "JResponse/allowCache"

From Joomla! Documentation

< API15:JResponse
(New page: ===Description=== Set/get cachable state for the response <span class="editsection" style="font-size:76%;"> <nowiki>[</nowiki>Edit Descripton<nowi...)
 
m (removing red link to edit, no existant pages)
Line 3: Line 3:
  
 
<span class="editsection" style="font-size:76%;">
 
<span class="editsection" style="font-size:76%;">
<nowiki>[</nowiki>[[Description:JResponse/allowCache|Edit Descripton]]<nowiki>]</nowiki>
+
<nowiki>[<! removed edit link to red link >]</nowiki>
 
</span>
 
</span>
  
{{Description:JResponse/allowCache}}
+
<! removed transcluded page call, red link never existed >
  
 
===Syntax===
 
===Syntax===
Line 42: Line 42:
  
 
<span class="editsection" style="font-size:76%;">
 
<span class="editsection" style="font-size:76%;">
<nowiki>[</nowiki>[[SeeAlso:JResponse/allowCache|Edit See Also]]<nowiki>]</nowiki>
+
<nowiki>[<! removed edit link to red link >]</nowiki>
 
</span>
 
</span>
{{SeeAlso:JResponse/allowCache}}
+
<! removed transcluded page call, red link never existed >
  
 
===Examples===
 
===Examples===
Line 57: Line 57:
 
  format= ,,,
 
  format= ,,,
 
</dpl>
 
</dpl>
 +
[[Category:Archived pages API15]]

Revision as of 13:45, 12 May 2013

The "API15" namespace is an archived namespace. This page contains information for a Joomla! version which is no longer supported. It exists only as a historical reference, it will not be improved and its content may be incomplete and/or contain broken links.

Description[edit]

Set/get cachable state for the response

[<! removed edit link to red link >]

<! removed transcluded page call, red link never existed >

Syntax[edit]

allowCache($allow=null)
Parameter Name Default Value Description
$allow null $allow

Returns[edit]

boolean True of browser caching should be allowed

Defined in[edit]

libraries/joomla/environment/response.php

Importing[edit]

jimport( 'joomla.environment.response' );

Source Body[edit]

function allowCache($allow = null)
{
        if (!is_null($allow)) {
                $GLOBALS['_JRESPONSE']->cachable = (bool) $allow;
        }
        return $GLOBALS['_JRESPONSE']->cachable;
}

[<! removed edit link to red link >] <! removed transcluded page call, red link never existed >

Examples[edit]

<CodeExamplesForm />

Override Default Headers

From: http://groups.google.com/group/joomla-dev-general/browse_thread/thread/6ef5fe7eba4efc26

How can I override the default joomla headers from within a custom component? I would like to change

Expires: Mon, 1 Jan 2001 00:00:00 GMT 
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre- 
check=0 
Pragma: no-cache

to

Expires: ~in five hours~ 
Cache-Control: public 
Pragma: public

JResponse::allowCache(true) did the trick. If it helps anyone else, here is the code that worked for me.

JResponse::allowCache(true); 
JResponse::setHeader('Pragma', 'public',true); 
JResponse::setHeader('Cache-Control','public',true); 
JResponse::setHeader('Expires', gmdate('D, d M Y H:i:s', time() 
+(60*60*5)) . ' GMT',true);
Elin 02:02, 6 December 2010 (CST) Edit comment

===Description===

Set/get cachable state for the response.



Syntax[edit]

static allowCache($allow=null)
Parameter Name Default Value Description
$allow null $allow

Returns[edit]

boolean True of browser caching should be allowed

Defined in[edit]

libraries/joomla/environment/response.php

Importing[edit]

jimport( 'joomla.environment.response' );

Source Body[edit]

public static function allowCache($allow = null)
{
        if (!is_null($allow)) {
                $GLOBALS['_JRESPONSE']->cachable = (bool) $allow;
        }
        return $GLOBALS['_JRESPONSE']->cachable;
}



Examples[edit]

Code Examples[edit]

Override Default Headers

From: http://groups.google.com/group/joomla-dev-general/browse_thread/thread/6ef5fe7eba4efc26

How can I override the default joomla headers from within a custom component? I would like to change

Expires: Mon, 1 Jan 2001 00:00:00 GMT 
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre- 
check=0 
Pragma: no-cache

to

Expires: ~in five hours~ 
Cache-Control: public 
Pragma: public

JResponse::allowCache(true) did the trick. If it helps anyone else, here is the code that worked for me.

JResponse::allowCache(true); 
JResponse::setHeader('Pragma', 'public',true); 
JResponse::setHeader('Cache-Control','public',true); 
JResponse::setHeader('Expires', gmdate('D, d M Y H:i:s', time() 
+(60*60*5)) . ' GMT',true);
Elin 02:02, 6 December 2010 (CST) Edit comment