function pugpig_get_page($id, $edition_id, $content_filter = null) { $post = get_post($id); // Just in case this item has been deleted if (!is_object($post) || apply_filters('pugpig_filter_page', false, $post, $content_filter)) { return null; } // Get the link for sharing // TODO: Allow post specific values in future // Get canonical URL for sharing (e.g. Twitter, Facebook) $sharing_link = apply_filters('pugpig_page_sharing_link', pugpig_get_canonical_url($post), $post); $status = $post->post_status; // We want everything except draft, pending and trashed posts in an edition if ($status != 'draft' && $status != 'trash' && $status != 'pending') { $status = 'published'; // We expect the word 'published' } $stop_id_prefixes = false; $page = array('id' => pugpig_get_atom_post_id($post, $stop_id_prefixes), 'title' => pugpig_get_feed_post_title($post), 'access' => pugpig_get_atom_post_access($post), 'summary' => pugpig_get_feed_post_summary($post), 'status' => $status, 'modified' => pugpig_get_page_modified($post), 'date' => strtotime($post->post_date), 'type' => $post->post_type, 'categories' => pugpig_get_feed_post_categories($post, $content_filter), 'url' => url_create_deep_dot_url(pugpig_strip_domain(pugpig_get_html_url($post, $edition_id))), 'sharing_link' => $sharing_link, 'manifest' => url_create_deep_dot_url(pugpig_strip_domain(pugpig_get_manifest_url($post))), 'custom_categories' => pugpig_get_feed_post_custom_categories($post, $content_filter), 'links' => pugpig_get_links($post, $content_filter), 'author' => pugpig_get_feed_post_author($post)); $level = pugpig_get_feed_post_level($post, $content_filter); if (!empty($level)) { $page['level'] = $level; } if ($stop_id_prefixes) { $page['id_prefix'] = ''; } return $page; }
function pugpig_get_encoded_image_url($url, $prefix, $make_relative = true) { $url = apply_filters('pugpig_rewrite_external_image_url', $url); $out = strrchr(content_url(), '/') . "/{$prefix}/" . base64_encode($url) . ".jpeg"; $out = str_replace("=", "_", $out); if ($make_relative) { $out = url_create_deep_dot_url($out); } return $out; }