summaryrefslogtreecommitdiffstats
path: root/wp-includes/post-template.php
diff options
context:
space:
mode:
authordonncha <donncha@7be80a69-a1ef-0310-a953-fb0f7c49ff36>2008-04-04 16:44:15 +0000
committerdonncha <donncha@7be80a69-a1ef-0310-a953-fb0f7c49ff36>2008-04-04 16:44:15 +0000
commit7740e89de3e1bc0cc636120e3ca8ab9e97e4d3cc (patch)
treec6fd23b598f3994eddb18cb1c0f2e8d95ff054fa /wp-includes/post-template.php
parentf650f48c048bfbbb2ae702b6425d87e39358d748 (diff)
downloadwordpress-mu-7740e89de3e1bc0cc636120e3ca8ab9e97e4d3cc.tar.gz
wordpress-mu-7740e89de3e1bc0cc636120e3ca8ab9e97e4d3cc.tar.xz
wordpress-mu-7740e89de3e1bc0cc636120e3ca8ab9e97e4d3cc.zip
Merged with WordPress 2.5, unstable, only for testing
git-svn-id: http://svn.automattic.com/wordpress-mu/trunk@1218 7be80a69-a1ef-0310-a953-fb0f7c49ff36
Diffstat (limited to 'wp-includes/post-template.php')
-rw-r--r--wp-includes/post-template.php125
1 files changed, 99 insertions, 26 deletions
diff --git a/wp-includes/post-template.php b/wp-includes/post-template.php
index a956dc4..47c1068 100644
--- a/wp-includes/post-template.php
+++ b/wp-includes/post-template.php
@@ -54,11 +54,13 @@ function get_the_title( $id = 0 ) {
$post = &get_post($id);
$title = $post->post_title;
- if ( !empty($post->post_password) )
- $title = sprintf(__('Protected: %s'), $title);
- else if ( 'private' == $post->post_status )
- $title = sprintf(__('Private: %s'), $title);
+ if ( !is_admin() ) {
+ if ( !empty($post->post_password) )
+ $title = sprintf(__('Protected: %s'), $title);
+ else if ( isset($post->post_status) && 'private' == $post->post_status )
+ $title = sprintf(__('Private: %s'), $title);
+ }
return apply_filters( 'the_title', $title );
}
@@ -81,13 +83,12 @@ function the_content($more_link_text = '(more...)', $stripteaser = 0, $more_file
function get_the_content($more_link_text = '(more...)', $stripteaser = 0, $more_file = '') {
- global $id, $post, $more, $single, $withcomments, $page, $pages, $multipage, $numpages;
- global $preview;
- global $pagenow;
+ global $id, $post, $more, $page, $pages, $multipage, $preview, $pagenow;
+
$output = '';
if ( !empty($post->post_password) ) { // if there's a password
- if ( stripslashes($_COOKIE['wp-postpass_'.COOKIEHASH]) != $post->post_password ) { // and it doesn't match the cookie
+ if ( !isset($_COOKIE['wp-postpass_'.COOKIEHASH]) || stripslashes($_COOKIE['wp-postpass_'.COOKIEHASH]) != $post->post_password ) { // and it doesn't match the cookie
$output = get_the_password_form();
return $output;
}
@@ -137,12 +138,12 @@ function the_excerpt() {
}
-function get_the_excerpt($deprecated = true) {
- global $id, $post;
+function get_the_excerpt($deprecated = '') {
+ global $post;
$output = '';
$output = $post->post_excerpt;
if ( !empty($post->post_password) ) { // if there's a password
- if ( $_COOKIE['wp-postpass_'.COOKIEHASH] != $post->post_password ) { // and it doesn't match the cookie
+ if ( !isset($_COOKIE['wp-postpass_'.COOKIEHASH]) || $_COOKIE['wp-postpass_'.COOKIEHASH] != $post->post_password ) { // and it doesn't match the cookie
$output = __('There is no excerpt because this is a protected post.');
return $output;
}
@@ -167,7 +168,7 @@ function wp_link_pages($args = '') {
$r = wp_parse_args( $args, $defaults );
extract( $r, EXTR_SKIP );
- global $post, $id, $page, $numpages, $multipage, $more, $pagenow;
+ global $post, $page, $numpages, $multipage, $more, $pagenow;
if ( $more_file != '' )
$file = $more_file;
else
@@ -249,8 +250,6 @@ function post_custom( $key = '' ) {
// this will probably change at some point...
function the_meta() {
- global $id;
-
if ( $keys = get_post_custom_keys() ) {
echo "<ul class='post-meta'>\n";
foreach ( $keys as $key ) {
@@ -321,6 +320,7 @@ function wp_list_pages($args = '') {
$r['exclude'] = implode(',', apply_filters('wp_list_pages_excludes', explode(',', $r['exclude'])));
// Query pages.
+ $r['hierarchical'] = 0;
$pages = get_pages($r);
if ( !empty($pages) ) {
@@ -328,7 +328,7 @@ function wp_list_pages($args = '') {
$output .= '<li class="pagenav">' . $r['title_li'] . '<ul>';
global $wp_query;
- if ( is_page() )
+ if ( is_page() || $wp_query->is_posts_page )
$current_page = $wp_query->get_queried_object_id();
$output .= walk_page_tree($pages, $r['depth'], $current_page, $r);
@@ -364,37 +364,63 @@ function walk_page_dropdown_tree() {
// Attachments
//
-function the_attachment_link($id = 0, $fullsize = false, $max_dims = false) {
- echo get_the_attachment_link($id, $fullsize, $max_dims);
+function the_attachment_link($id = 0, $fullsize = false, $deprecated = false, $permalink = false) {
+ if ( $fullsize )
+ echo wp_get_attachment_link($id, 'full', $permalink);
+ else
+ echo wp_get_attachment_link($id, 'thumbnail', $permalink);
}
-function get_the_attachment_link($id = 0, $fullsize = false, $max_dims = false) {
+// get an attachment page link using an image or icon if possible
+function wp_get_attachment_link($id = 0, $size = 'thumbnail', $permalink = false, $icon = false) {
+ $_post = & get_post( intval($id) );
+
+ if ( ('attachment' != $_post->post_type) || !$url = wp_get_attachment_url($_post->ID) )
+ return __('Missing Attachment');
+
+ if ( $permalink )
+ $url = get_attachment_link($_post->ID);
+
+ $post_title = attribute_escape($_post->post_title);
+
+ $link_text = wp_get_attachment_image($id, $size, $icon);
+ if ( !$link_text )
+ $link_text = $_post->post_title;
+
+ return "<a href='$url' title='$post_title'>$link_text</a>";
+
+}
+
+// deprecated - use wp_get_attachment_link()
+function get_the_attachment_link($id = 0, $fullsize = false, $max_dims = false, $permalink = false) {
$id = (int) $id;
$_post = & get_post($id);
if ( ('attachment' != $_post->post_type) || !$url = wp_get_attachment_url($_post->ID) )
return __('Missing Attachment');
+ if ( $permalink )
+ $url = get_attachment_link($_post->ID);
+
$post_title = attribute_escape($_post->post_title);
$innerHTML = get_attachment_innerHTML($_post->ID, $fullsize, $max_dims);
return "<a href='$url' title='$post_title'>$innerHTML</a>";
}
+
+// deprecated: use wp_get_attachment_image_src()
function get_attachment_icon_src( $id = 0, $fullsize = false ) {
$id = (int) $id;
if ( !$post = & get_post($id) )
return false;
- $imagedata = wp_get_attachment_metadata( $post->ID );
-
$file = get_attached_file( $post->ID );
- if ( !$fullsize && $thumbfile = wp_get_attachment_thumb_file( $post->ID ) ) {
+ if ( !$fullsize && $src = wp_get_attachment_thumb_url( $post->ID ) ) {
// We have a thumbnail desired, specified and existing
- $src = wp_get_attachment_thumb_url( $post->ID );
- $src_file = $thumbfile;
+ $src_file = basename($src);
$class = 'attachmentthumb';
} elseif ( wp_attachment_is_image( $post->ID ) ) {
// We have an image without a thumbnail
@@ -415,11 +441,12 @@ function get_attachment_icon_src( $id = 0, $fullsize = false ) {
return array($src, $src_file);
}
+// deprecated: use wp_get_attachment_image()
function get_attachment_icon( $id = 0, $fullsize = false, $max_dims = false ) {
$id = (int) $id;
if ( !$post = & get_post($id) )
return false;
-
+
if ( !$src = get_attachment_icon_src( $post->ID, $fullsize ) )
return false;
@@ -445,7 +472,10 @@ function get_attachment_icon( $id = 0, $fullsize = false, $max_dims = false ) {
}
} else {
$post->iconsize = array($imagesize[0], $imagesize[1]);
+ $constraint = '';
}
+ } else {
+ $constraint = '';
}
$post_title = attribute_escape($post->post_title);
@@ -455,6 +485,7 @@ function get_attachment_icon( $id = 0, $fullsize = false, $max_dims = false ) {
return apply_filters( 'attachment_icon', $icon, $post->ID );
}
+// deprecated: use wp_get_attachment_image()
function get_attachment_innerHTML($id = 0, $fullsize = false, $max_dims = false) {
$id = (int) $id;
if ( !$post = & get_post($id) )
@@ -470,8 +501,14 @@ function get_attachment_innerHTML($id = 0, $fullsize = false, $max_dims = false)
}
function prepend_attachment($content) {
+ global $post;
+
+ if ( empty($post->post_type) || $post->post_type != 'attachment' )
+ return $content;
+
$p = '<p class="attachment">';
- $p .= get_the_attachment_link(false, true, array(400, 300));
+ // show the medium sized image representation of the attachment if available, and link to the raw file
+ $p .= wp_get_attachment_link(0, 'medium', false);
$p .= '</p>';
$p = apply_filters('prepend_attachment', $p);
@@ -483,12 +520,48 @@ function prepend_attachment($content) {
//
function get_the_password_form() {
+ global $post;
+ $label = 'pwbox-'.(empty($post->ID) ? rand() : $post->ID);
$output = '<form action="' . get_option('siteurl') . '/wp-pass.php" method="post">
<p>' . __("This post is password protected. To view it please enter your password below:") . '</p>
- <p><label>' . __("Password:") . ' <input name="post_password" type="password" size="20" /></label> <input type="submit" name="Submit" value="' . __("Submit") . '" /></p>
+ <p><label for="' . $label . '">' . __("Password:") . ' <input name="post_password" id="' . $label . '" type="password" size="20" /></label> <input type="submit" name="Submit" value="' . __("Submit") . '" /></p>
</form>
';
return $output;
}
+/**
+ * is_page_template() - Determine wether or not we are in a page template
+ *
+ * This template tag allows you to determine wether or not you are in a page template.
+ * You can optional provide a template name and then the check will be specific to
+ * that template.
+ *
+ * @package Template Tags
+ * @global object $wp_query
+ * @param string $template The specific template name if specific matching is required
+ */
+function is_page_template($template = '') {
+ if (!is_page()) {
+ return false;
+ }
+
+ global $wp_query;
+
+ $page = $wp_query->get_queried_object();
+ $custom_fields = get_post_custom_values('_wp_page_template',$page->ID);
+ $page_template = $custom_fields[0];
+
+ // We have no argument passed so just see if a page_template has been specified
+ if ( empty( $template ) ) {
+ if (!empty( $page_template ) ) {
+ return true;
+ }
+ } elseif ( $template == $page_template) {
+ return true;
+ }
+
+ return false;
+}
+
?>