meta();
$assets->stylesheets();
$assets->javascript();
$assets->feeds();
$assets->output();
}
function meta() {
// Theme name and version
$themeversion = theme_version();
$meta = array("");
// Description
global $wp_query;
$excerpt = trim(strip_tags(wp_specialchars($wp_query->post->post_excerpt)));
if ( (is_single() || is_page()) && strlen($excerpt) )
$description = $excerpt;
else
$description = get_bloginfo('description');
if ( strlen($description) )
$meta[] = "";
// Robots
if(get_option('blog_public') != '0')
$meta[] = '';
$this->meta = apply_filters('tarski_asset_meta', $meta);
}
function stylesheets() {
// Default stylesheets
$style_array = array(
'main' => array(
'url' => get_bloginfo('stylesheet_url'),
),
'screen' => array(
'url' => get_bloginfo('template_directory') . '/library/css/screen.css',
'media' => 'screen,projection'
),
'print' => array(
'url' => get_bloginfo('template_directory') . '/library/css/print.css',
'media' => 'print'
)
);
// Adds the alternate style, if one is selected
if(get_tarski_option('style')) {
$style_array['alternate'] = array(
'url' => get_bloginfo('template_directory') . '/styles/' . get_tarski_option('style')
);
}
// The more complex array can be filtered if desired
$style_array = apply_filters('tarski_style_array', $style_array);
// The business end of the function
if(is_array($style_array)) {
foreach($style_array as $type => $values) {
// URL is required
if(is_array($values) && $values['url']) {
if(empty($values['media'])) {
$values['media'] = 'all';
}
$stylesheets[$type] = sprintf(
'',
$values['url'],
$values['media']
);
}
}
}
$this->stylesheets = apply_filters('tarski_stylesheets', $stylesheets);
}
function javascript() {
$scripts = array(
'tarski-js' => get_bloginfo('template_directory') . '/library/js/tarski.js'
);
foreach($scripts as $name => $url) {
$javascript[$name] = "";
}
$this->javascript = apply_filters('tarski_javascript', $javascript);
}
function feeds() {
global $comments;
if(is_single() || (is_page() && ($comments || comments_open()))) {
global $post;
$title = sprintf(__('Commments feed for %s','tarski'), get_the_title());
$link = get_post_comments_feed_link($post->ID);
$source = 'post_comments';
} elseif(is_archive()) {
if(is_category()) {
$title = sprintf( __('Category feed for %s','tarski'), single_cat_title('','',false) );
$link = get_category_feed_link(get_query_var('cat'));
$source = 'category';
} elseif(is_tag()) {
$title = sprintf( __('Tag feed for %s','tarski'), single_tag_title('','',false));
$link = get_tag_feed_link(get_query_var('tag_id'));
$source = 'tag';
} elseif(is_author()) {
$title = sprintf( __('Articles feed for %s','tarski'), the_archive_author_displayname());
$link = get_author_feed_link(get_query_var('author'));
$source = 'author';
} elseif(is_date()) {
if(is_day()) {
$title = sprintf( __('Daily archive feed for %s','tarski'), tarski_date());
$link = get_day_link(get_the_time('Y'), get_the_time('m'), get_the_time('d'));
$source = 'day';
} elseif(is_month()) {
$title = sprintf( __('Monthly archive feed for %s','tarski'), get_the_time('F Y'));
$link = get_month_link(get_the_time('Y'), get_the_time('m'));
$source = 'month';
} elseif(is_year()) {
$title = sprintf( __('Yearly archive feed for %s','tarski'), get_the_time('Y'));
$link = get_year_link(get_the_time('Y'));
$source = 'year';
}
if(get_settings('permalink_structure')) {
$link .= 'feed/';
} else {
$link .= '&feed=' . get_default_feed();
}
}
} elseif(is_search()) {
$search_query = attribute_escape(get_search_query());
$feeds['search'] = generate_feed_link( sprintf(__('Search feed for %s','tarski'), $search_query), get_search_feed_link('', $type), feed_link_type($type) );
$title = sprintf(__('Search comments feed for %s','tarski'), $search_query);
$link = get_search_comments_feed_link('', $type);
$source = 'search_comments';
} else {
$title = false;
}
if($title && $link)
$feeds[$source] = generate_feed_link($title, $link, feed_link_type(get_default_feed()));
$feeds['site'] = generate_feed_link( sprintf(__('%s feed','tarski'), get_bloginfo('name')), get_feed_link(), feed_link_type(get_default_feed()) );
$this->feeds = apply_filters('tarski_feeds', $feeds);
}
function output() {
$assets_collapsed = array();
// Implode each array with carriage returns, two between asset groups
foreach ( $this as $asset ) {
$assets_collapsed[] = implode("\n", $asset);
}
$assets_filtered = apply_filters('tarski_assets', $assets_collapsed);
echo implode("\n\n", $assets_filtered);
}
}
?>