summaryrefslogtreecommitdiffstats
path: root/user_guide/helpers/url_helper.html
diff options
context:
space:
mode:
authorGreg Aker <greg@gregaker.net>2011-08-20 18:58:58 +0200
committerGreg Aker <greg@gregaker.net>2011-08-20 18:58:58 +0200
commitabbad9ea53e81c6e3211029711ac5b2ab4f1978d (patch)
tree9a4d5a8587da1dd3a365251afa37be2f835a53c2 /user_guide/helpers/url_helper.html
parent71644d683d0a15a6f7e04fabd0f51a4200d620b4 (diff)
parentd56be70257696d0bbf2dcc880888d8dc17cba21c (diff)
Merge branch 'develop' into feature/unit-tests
Conflicts: .hgignore
Diffstat (limited to 'user_guide/helpers/url_helper.html')
-rw-r--r--user_guide/helpers/url_helper.html64
1 files changed, 39 insertions, 25 deletions
diff --git a/user_guide/helpers/url_helper.html b/user_guide/helpers/url_helper.html
index 0bcf1e7ae..ac9d0a68e 100644
--- a/user_guide/helpers/url_helper.html
+++ b/user_guide/helpers/url_helper.html
@@ -69,13 +69,13 @@ URL Helper
<h2>site_url()</h2>
-<p>Returns your site URL, as specified in your config file. The index.php file (or whatever you have set as your
-site <dfn>index_page</dfn> in your config file) will be added to the URL, as will any URI segments you pass to the function.</p>
+<p>Returns your site URL, as specified in your config file. The index.php file (or whatever you have set as your
+site <dfn>index_page</dfn> in your config file) will be added to the URL, as will any URI segments you pass to the function, and the <dfn>url_suffix</dfn> as set in your config file.</p>
<p>You are encouraged to use this function any time you need to generate a local URL so that your pages become more portable
in the event your URL changes.</p>
-<p>Segments can be optionally passed to the function as a string or an array. Here is a string example:</p>
+<p>Segments can be optionally passed to the function as a string or an array. Here is a string example:</p>
<code>echo site_url("news/local/123");</code>
@@ -90,16 +90,30 @@ echo site_url($segments);</code>
<h2>base_url()</h2>
-<p>Returns your site base URL, as specified in your config file. Example:</p>
+<p>Returns your site base URL, as specified in your config file. Example:</p>
<code>echo base_url();</code>
+<p>This function returns the same thing as site_url, without the <dfn>index_page</dfn> or <dfn>url_suffix</dfn> being appended.</p>
+
+<p>Also like site_url, you can supply segments as a string or an array. Here is a string example:</p>
+
+<code>echo base_url("blog/post/123");</code>
+
+<p>The above example would return something like: http://example.com/blog/post/123</p>
+
+<p>This is useful because unlike site_url(), you can supply a string to a file, such as an image or stylesheet. For example:</p>
+
+<code>echo base_url("images/icons/edit.png");</code>
+
+<p>This would give you something like: http://example.com/images/icons/edit.png</p>
+
<h2>current_url()</h2>
<p>Returns the full URL (including segments) of the page being currently viewed.</p>
<h2>uri_string()</h2>
-<p>Returns the URI segments of any page that contains this function. For example, if your URL was this:</p>
+<p>Returns the URI segments of any page that contains this function. For example, if your URL was this:</p>
<code>http://some-site.com/blog/comments/123</code>
<p>The function would return:</p>
@@ -107,7 +121,7 @@ echo site_url($segments);</code>
<h2>index_page()</h2>
-<p>Returns your site "index" page, as specified in your config file. Example:</p>
+<p>Returns your site "index" page, as specified in your config file. Example:</p>
<code>echo index_page();</code>
@@ -122,15 +136,15 @@ echo site_url($segments);</code>
<code>anchor(<var>uri segments</var>, <var>text</var>, <var>attributes</var>)</code>
-<p>The first parameter can contain any segments you wish appended to the URL. As with the <dfn>site_url()</dfn> function above,
+<p>The first parameter can contain any segments you wish appended to the URL. As with the <dfn>site_url()</dfn> function above,
segments can be a string or an array.</p>
-<p><strong>Note:</strong>&nbsp; If you are building links that are internal to your application do not include the base URL (http://...). This
+<p><strong>Note:</strong>&nbsp; If you are building links that are internal to your application do not include the base URL (http://...). This
will be added automatically from the information specified in your config file. Include only the URI segments you wish appended to the URL.</p>
-<p>The second segment is the text you would like the link to say. If you leave it blank, the URL will be used.</p>
+<p>The second segment is the text you would like the link to say. If you leave it blank, the URL will be used.</p>
-<p>The third parameter can contain a list of attributes you would like added to the link. The attributes can be a simple string or an associative array.</p>
+<p>The third parameter can contain a list of attributes you would like added to the link. The attributes can be a simple string or an associative array.</p>
<p>Here are some examples:</p>
@@ -148,7 +162,7 @@ will be added automatically from the information specified in your config file.
<p>Nearly identical to the <dfn>anchor()</dfn> function except that it opens the URL in a new window.
You can specify JavaScript window attributes in the third parameter to control how the window is opened. If
-the third parameter is not set it will simply open a new window with your own browser settings. Here is an example
+the third parameter is not set it will simply open a new window with your own browser settings. Here is an example
with attributes:</p>
<code>
@@ -173,7 +187,7 @@ If you want the function to use all of its defaults simply pass an empty array i
<h2>mailto()</h2>
-<p>Creates a standard HTML email link. Usage example:</p>
+<p>Creates a standard HTML email link. Usage example:</p>
<code>echo mailto('me@my-site.com', 'Click Here to Contact Me');</code>
@@ -188,12 +202,12 @@ written with JavaScript to help prevent the email address from being harvested b
<h2>auto_link()</h2>
-<p>Automatically turns URLs and email addresses contained in a string into links. Example:</p>
+<p>Automatically turns URLs and email addresses contained in a string into links. Example:</p>
<code>$string = auto_link($string);</code>
-<p>The second parameter determines whether URLs and emails are converted or just one or the other. Default behavior is both
-if the parameter is not specified. Email links are encoded as safe_mailto() as shown above.</p>
+<p>The second parameter determines whether URLs and emails are converted or just one or the other. Default behavior is both
+if the parameter is not specified. Email links are encoded as safe_mailto() as shown above.</p>
<p>Converts only URLs:</p>
<code>$string = auto_link($string, 'url');</code>
@@ -201,42 +215,42 @@ if the parameter is not specified. Email links are encoded as safe_mailto() as s
<p>Converts only Email addresses:</p>
<code>$string = auto_link($string, 'email');</code>
-<p>The third parameter determines whether links are shown in a new window. The value can be TRUE or FALSE (boolean):</p>
+<p>The third parameter determines whether links are shown in a new window. The value can be TRUE or FALSE (boolean):</p>
<code>$string = auto_link($string, 'both', TRUE);</code>
<h2>url_title()</h2>
<p>Takes a string as input and creates a human-friendly URL string. This is useful if, for example, you have a blog
-in which you'd like to use the title of your entries in the URL. Example:</p>
+in which you'd like to use the title of your entries in the URL. Example:</p>
<code>$title = "What's wrong with CSS?";<br />
<br />
$url_title = url_title($title);<br />
<br />
-// Produces: Whats-wrong-with-CSS
+// Produces: Whats-wrong-with-CSS
</code>
-<p>The second parameter determines the word delimiter. By default dashes are used. Options are: <dfn>dash</dfn>, or <dfn>underscore</dfn>:</p>
+<p>The second parameter determines the word delimiter. By default dashes are used. Options are: <dfn>dash</dfn>, or <dfn>underscore</dfn>:</p>
<code>$title = "What's wrong with CSS?";<br />
<br />
$url_title = url_title($title, 'underscore');<br />
<br />
-// Produces: Whats_wrong_with_CSS
+// Produces: Whats_wrong_with_CSS
</code>
-<p>The third parameter determines whether or not lowercase characters are forced. By default they are not. Options are boolean <dfn>TRUE</dfn>/<dfn>FALSE</dfn>:</p>
+<p>The third parameter determines whether or not lowercase characters are forced. By default they are not. Options are boolean <dfn>TRUE</dfn>/<dfn>FALSE</dfn>:</p>
<code>$title = "What's wrong with CSS?";<br />
<br />
$url_title = url_title($title, 'underscore', TRUE);<br />
<br />
-// Produces: whats_wrong_with_css
+// Produces: whats_wrong_with_css
</code>
<h3>prep_url()</h3>
-<p>This function will add <kbd>http://</kbd> in the event that a scheme is missing from a URL. Pass the URL string to the function like this:</p>
+<p>This function will add <kbd>http://</kbd> in the event that a scheme is missing from a URL. Pass the URL string to the function like this:</p>
<code>
$url = "example.com";<br /><br />
$url = prep_url($url);</code>
@@ -250,7 +264,7 @@ $url = prep_url($url);</code>
to the controller you want to direct to will create the link. The function will build the URL based on your config file values.</p>
<p>The optional second parameter allows you to choose between the "location"
-method (default) or the "refresh" method. Location is faster, but on Windows servers it can sometimes be a problem. The optional third parameter allows you to send a specific HTTP Response Code - this could be used for example to create 301 redirects for search engine purposes. The default Response Code is 302. The third parameter is <em>only</em> available with 'location' redirects, and not 'refresh'. Examples:</p>
+method (default) or the "refresh" method. Location is faster, but on Windows servers it can sometimes be a problem. The optional third parameter allows you to send a specific HTTP Response Code - this could be used for example to create 301 redirects for search engine purposes. The default Response Code is 302. The third parameter is <em>only</em> available with 'location' redirects, and not 'refresh'. Examples:</p>
<code>if ($logged_in == FALSE)<br />
{<br />
@@ -262,7 +276,7 @@ redirect('/article/13', 'location', 301);</code>
<p class="important"><strong>Note:</strong> In order for this function to work it must be used before anything is outputted
to the browser since it utilizes server headers.<br />
-<strong>Note:</strong> For very fine grained control over headers, you should use the <a href="../libraries/output.html">Output Library</a>'s set_header() function.</p>
+<strong>Note:</strong> For very fine grained control over headers, you should use the <a href="../libraries/output.html">Output Library</a>'s set_header() function.</p>