initial commit of 2.7.1

This commit is contained in:
John Bintz 2009-06-13 07:58:02 -04:00
commit 88b79d8ff4
33 changed files with 2895 additions and 0 deletions

BIN
1.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 329 B

BIN
2.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 321 B

BIN
2a.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 345 B

BIN
3.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 288 B

BIN
3a.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 300 B

BIN
4.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 270 B

16
404.php Normal file
View File

@ -0,0 +1,16 @@
<?php get_header() ?>
<div id="column">
<div class="post-page-head"></div>
<div class="post-page">
<h2 class="pagetitle">Page Not Found</h2>
<p><a href="<?php bloginfo('url') ?>">Click here to return to the home page</a> or try a search:</p>
<p><?php include (TEMPLATEPATH . '/searchform.php') ?></p>
<br class="clear-margins" />
</div>
<div class="post-page-foot"></div>
</div>
<?php include(TEMPLATEPATH . '/sidebar.php') ?>
<?php get_footer() ?>

17
README Normal file
View File

@ -0,0 +1,17 @@
ComicPress is the WordPress Comic Pubishing Theme
Copyright 2005-2009 Tyler Martin
Copyright 2008-2009 John Bintz
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.

171
archive-comic-calendar.php Normal file
View File

@ -0,0 +1,171 @@
<?php
/*
Template Name: Comic Calendar Archive
*/
?>
<?php get_header() ?>
<style>
.cpcal-month {
width: 157px;
height: 138px;
padding: 5px 0 5px 5px;
margin: 0 8px 8px 0;
float: left;
border: 1px solid #000;
}
.cpcal-monthtitle {
width: 154px;
height: 16px;
padding: 0 0 5px 0;
text-align: center;
font-family: 'Georgia', serif;
font-variant: small-caps;
font-size: 16px;
line-height: 16px;
letter-spacing: -1px;
}
.cpcal-dayletter {
width: 20px;
height: 15px;
margin: 0 2px 2px 0;
display: block;
float: left;
text-align: center;
font-size: 10px;
line-height: 13px;
}
.cpcal-day {
width: 18px;
height: 13px;
margin: 0 2px 2px 0;
display: block;
float: left;
text-align: center;
font-size: 10px;
line-height: 13px;
border: 1px solid #000;
}
.cpcal-day a {
width: 18px;
height: 13px;
line-height: 13px;
display: block;
font-size: 12px;
font-weight: bold;
}
.cpcal-day a:hover {
color: #fff;
background: #000;
}
</style>
<?php
$dayWidth = 22; //set to .cpcal-day total width in pixels including: width, left & right border, left & right margin, left & right padding
$archive_year = $_GET['archive_year']; if (is_null($archive_year)) { $archive_year = date('Y'); }
$firstDayMargins = array();
for ($i = 1; $i <= 12; ++$i) {
$dateInfo = getdate(mktime(0,0,0,$i,1,$archive_year));
$firstDayMargins[$i] = $dateInfo['wday'] * $dayWidth;
}
$tempPost = $post;
$comicArchive = new WP_Query(); $comicArchive->query('&showposts=1000&cat='.get_all_comic_categories_as_cat_string().'&year='.$archive_year);
while ($comicArchive->have_posts()) : $comicArchive->the_post();
$calTitle = get_the_title();
$calLink = get_permalink();
$calDay = get_the_time('j');
$calMonth = get_the_time('F');
$calComic[$calMonth.$calDay] = array('link' => $calLink, 'title' => $calTitle);
endwhile;
$post = $tempPost;
function leapYear($yr) {
if ($yr % 4 != 0) {
return 28;
} else {
if ($yr % 100 != 0) {
return 29;
} else {
if ($yr % 400 != 0) {
return 28;
} else {
return 29;
}
}
}
}
$leapYear = leapYear($archive_year);
$month['1'] = array('month' => 'January', 'days' => '31');
$month['2'] = array('month' => 'February', 'days' => $leapYear);
$month['3'] = array('month' => 'March', 'days' => '31');
$month['4'] = array('month' => 'April', 'days' => '30');
$month['5'] = array('month' => 'May', 'days' => '31');
$month['6'] = array('month' => 'June', 'days' => '30');
$month['7'] = array('month' => 'July', 'days' => '31');
$month['8'] = array('month' => 'August', 'days' => '31');
$month['9'] = array('month' => 'September', 'days' => '30');
$month['10'] = array('month' => 'October', 'days' => '31');
$month['11'] = array('month' => 'November', 'days' => '30');
$month['12'] = array('month' => 'December', 'days' => '31');
?>
<div id="column">
<div class="post-page-head"></div>
<div class="post-page">
<h2 class="pagetitle"><span class="archive-year"><?php echo $archive_year ?></span> <?php the_title() ?></h2>
<div class="entry">
<?php while (have_posts()) : the_post(); the_content(); endwhile ?>
</div>
<div class="archive-yearlist">|
<?php $years = $wpdb->get_col("SELECT DISTINCT YEAR(post_date) FROM $wpdb->posts WHERE post_status = 'publish' ORDER BY post_date ASC");
foreach ( $years as $year ) {
if ($year != (0) ) { ?>
<a href="<?php echo add_query_arg('archive_year', $year) ?>"><strong><?php echo $year ?></strong></a> |
<?php } } ?>
</div>
<?php $i=1; while($i<=12) { ?>
<div class="cpcal-month" id="<?php echo $month[$i]['month'] ?>">
<div class="cpcal-monthtitle"><?php echo $month[$i]['month']." ".$archive_year ?></div>
<?php foreach(array("S", "M", "T", "W", "T", "F", "S") as $dow) { ?>
<div class="cpcal-dayletter"><?php echo $dow ?></div>
<?php } ?>
<div class="clear"></div>
<?php $day=1; while($day<=$month[$i]['days']) {
if ($day == 1) { ?>
<div style="width:<?php echo $firstDayMargins[$i]; ?>px;height:15px;float:left;"></div>
<?php } ?>
<div class="cpcal-day">
<?php if (isset($calComic[$month[$i]['month'].$day])) { ?>
<a href="<?php echo $calComic[$month[$i]['month'].$day]['link'] ?>" title="<?php echo $calComic[$month[$i]['month'].$day]['title'] ?>"><?php echo $day ?></a>
<?php } else {
echo $day." ";
} ?>
</div>
<?php ++$day;
}
++$i ?>
</div>
<?php } ?>
<br class="clear-margins" />
</div>
<div class="post-page-foot"></div>
</div>
<?php include(TEMPLATEPATH . '/sidebar.php') ?>
<?php get_footer() ?>

View File

@ -0,0 +1,131 @@
<?php
/*
Template Name: Comic Storyline with Thumbs
*/
?>
<?php get_header() ?>
<style>
#storyline, #storyline ul {
padding: 0;
margin: 0;
list-style: none;
}
#storyline li {
padding: 0;
margin: 0;
}
#storyline li img {
height: 50px;
display: none;
}
#storyline li li img {
display: block;
float: right;
padding: 0 0 0 10px;
}
#storyline ul ul {
margin: 0 0 0 20px;
}
#storyline li li .storyline-title {
font-size: 24px;
font-weight: bold;
display: block;
color: #000;
}
#storyline li li .storyline-title:hover {
color: #900;
}
#storyline li li li a.storyline-title {
font-size: 18px;
}
#storyline li li li li a.storyline-title {
font-size: 14px;
}
.storyline-description {
font-size: 11px;
}
.storyline-foot {
clear: both;
margin: 0 0 10px 0;
height: 10px;
border-bottom: 4px solid #000;
}
#storyline li li .storyline-foot {
border-bottom: 2px solid #000;
}
#storyline li li li .storyline-foot {
border-bottom: 1px solid #000;
}
</style>
<div id="column">
<div class="post-page-head"></div>
<div class="post-page">
<h2 class="pagetitle"><?php the_title() ?></h2>
<div class="entry">
<?php while (have_posts()) : the_post(); the_content(); endwhile ?>
</div>
<ul id="storyline" class="level-0">
<?php if (get_option('comicpress-enable-storyline-support') == 1) {
if (($result = get_option("comicpress-storyline-category-order")) !== false) {
$categories_by_id = get_all_category_objects_by_id();
$current_depth = 0;
$storyline_root = " class=\"storyline-root\"";
foreach (explode(",", $result) as $node) {
$parts = explode("/", $node);
$target_depth = count($parts) - 2;
$category_id = end($parts);
$category = $categories_by_id[$category_id];
$description = $category->description;
$first_comic_in_category = get_terminal_post_in_category($category_id);
$first_comic_permalink = get_permalink($first_comic_in_category->ID);
$archive_image = null;
foreach (array("archive", "rss", "comic") as $type) {
if (($requested_archive_image = get_comic_url("archive", $first_comic_in_category)) !== false) {
$archive_image = $requested_archive_image; break;
}
}
if ($target_depth < $current_depth) {
echo str_repeat("</ul></li>", ($current_depth - $target_depth));
}
if ($target_depth > $current_depth) {
for ($i = $current_depth; $i < $target_depth; ++$i) {
$next_i = $i + 1;
echo "<li><ul class=\"level-${next_i}\">";
}
} ?>
<li id="storyline-<?php echo $category->category_nicename ?>"<?php echo $storyline_root; $storyline_root = null ?>>
<?php if (!empty($first_comic_in_category)) { ?>
<a href="<?php echo $first_comic_permalink ?>" title="First comic in <?php echo $category->cat_name ?>."><img src="<?php echo $archive_image ?>" /></a>
<?php } ?>
<a href="<?php echo get_category_link($category_id) ?>" class="storyline-title"><?php echo $category->cat_name ?></a>
<?php if (!empty($description)) { ?>
<div class="storyline-description"><?php echo $description ?></div>
<?php } ?>
<div class="storyline-foot"></div>
</li>
<?php $current_depth = $target_depth;
}
if ($current_depth > 0) {
echo str_repeat("</ul></li>", $current_depth);
}
}
} else { ?>
<li><h3>Storyline Support is not currently enabled on this site.</h3><br /><br /><strong>Note to the Administrator:</strong><br /> To enable storyline support and manage storyline categories make sure you are running the latest version of the <a href="http://wordpress.org/extend/plugins/comicpress-manager/">ComicPress Manager</a> plugin and check your storyline settings from it's administration menu.</h3></li>
<?php } ?>
</ul>
<br class="clear-margins" />
</div>
<div class="post-page-foot"></div>
</div>
<?php include(TEMPLATEPATH . '/sidebar.php') ?>
<?php get_footer() ?>

133
archive-comic-storyline.php Normal file
View File

@ -0,0 +1,133 @@
<?php
/*
Template Name: Comic Storyline Archive
*/
?>
<?php get_header() ?>
<style>
#storyline, #storyline ul {
padding: 0;
margin: 0;
list-style: none;
}
#storyline li {
padding: 0;
margin: 0;
}
#storyline li img {
height: 50px;
display: none;
}
#storyline li li img {
display: block;
float: right;
padding: 0 0 0 10px;
}
#storyline ul ul {
margin: 0 0 0 20px;
}
#storyline li li .storyline-title {
font-size: 24px;
font-weight: bold;
display: block;
color: #000;
}
#storyline li li .storyline-title:hover {
color: #900;
}
#storyline li li li a.storyline-title {
font-size: 18px;
}
#storyline li li li li a.storyline-title {
font-size: 14px;
}
.storyline-description {
font-size: 11px;
}
.storyline-foot {
clear: both;
margin: 0 0 10px 0;
height: 10px;
border-bottom: 4px solid #000;
}
#storyline li li .storyline-foot {
border-bottom: 2px solid #000;
}
#storyline li li li .storyline-foot {
border-bottom: 1px solid #000;
}
</style>
<div id="column">
<div class="post-page-head"></div>
<div class="post-page">
<h2 class="pagetitle"><?php the_title() ?></h2>
<div class="entry">
<?php while (have_posts()) : the_post(); the_content(); endwhile ?>
</div>
<ul id="storyline" class="level-0">
<?php if (get_option('comicpress-enable-storyline-support') == 1) {
if (($result = get_option("comicpress-storyline-category-order")) !== false) {
$categories_by_id = get_all_category_objects_by_id();
$current_depth = 0;
$storyline_root = " class=\"storyline-root\"";
foreach (explode(",", $result) as $node) {
$parts = explode("/", $node);
$target_depth = count($parts) - 2;
$category_id = end($parts);
$category = $categories_by_id[$category_id];
$description = $category->description;
$first_comic_in_category = get_terminal_post_in_category($category_id);
$first_comic_permalink = get_permalink($first_comic_in_category->ID);
$archive_image = null;
foreach (array("archive", "rss", "comic") as $type) {
if (($requested_archive_image = get_comic_url("archive", $first_comic_in_category)) !== false) {
$archive_image = $requested_archive_image; break;
}
}
if ($target_depth < $current_depth) {
echo str_repeat("</ul></li>", ($current_depth - $target_depth));
}
if ($target_depth > $current_depth) {
for ($i = $current_depth; $i < $target_depth; ++$i) {
$next_i = $i + 1;
echo "<li><ul class=\"level-${next_i}\">";
}
} ?>
<li id="storyline-<?php echo $category->category_nicename ?>"<?php echo $storyline_root; $storyline_root = null ?>>
<a href="<?php echo get_category_link($category_id) ?>" class="storyline-title"><?php echo $category->cat_name ?></a>
<div class="storyline-description">
<?php if (!empty($description)) { ?>
<?php echo $description ?>
<?php } ?>
<?php if (!empty($first_comic_in_category)) { ?>
Begins with &ldquo;<a href="<?php echo $first_comic_permalink ?>"><?php echo $first_comic_in_category->post_title ?></a>&rdquo;.
<?php } ?>
</div>
<div class="storyline-foot"></div>
</li>
<?php $current_depth = $target_depth;
}
if ($current_depth > 0) {
echo str_repeat("</ul></li>", $current_depth);
}
}
} else { ?>
<li><h3>Storyline Support is not currently enabled on this site.</h3><br /><br /><strong>Note to the Administrator:</strong><br /> To enable storyline support and manage storyline categories make sure you are running the latest version of the <a href="http://wordpress.org/extend/plugins/comicpress-manager/">ComicPress Manager</a> plugin and check your storyline settings from it's administration menu.</h3></li>
<?php } ?>
</ul>
<br class="clear-margins" />
</div>
<div class="post-page-foot"></div>
</div>
<?php include(TEMPLATEPATH . '/sidebar.php') ?>
<?php get_footer() ?>

63
archive-comic-year.php Normal file
View File

@ -0,0 +1,63 @@
<?php
/*
Template Name: Comic Year Archive
*/
?>
<?php get_header() ?>
<?php $archive_year = $_GET['archive_year']; if (is_null($archive_year)) { $archive_year = date('Y'); } ?>
<style>
.archive-date {
padding: 0 5px 0 0;
font-size: 11px;
white-space: nowrap;
}
.archive-title {
padding: 2px 5px;
line-height: 11px;
border-left: 1px solid #000;
}
.month-table{
border-collapse: collapse;
margin: 0 0 20px 0;
}
</style>
<div id="column">
<div class="post-page-head"></div>
<div class="post-page">
<h2 class="pagetitle"><span class="archive-year"><?php echo $archive_year; ?></span> <?php the_title() ?></h2>
<div class="entry">
<?php while (have_posts()) : the_post(); the_content(); endwhile ?>
</div>
<div class="archive-yearlist">|
<?php $years = $wpdb->get_col("SELECT DISTINCT YEAR(post_date) FROM $wpdb->posts WHERE post_status = 'publish' ORDER BY post_date ASC");
foreach ( $years as $year ) {
if ($year != (0) ) { ?>
<a href="<?php echo add_query_arg('archive_year', $year) ?>"><strong><?php echo $year ?></strong></a> |
<?php } } ?>
</div>
<table class="month-table">
<?php $comicArchive = new WP_Query(); $comicArchive->query('showposts=10000&cat='.get_all_comic_categories_as_cat_string().'&year='.$archive_year);
while ($comicArchive->have_posts()) : $comicArchive->the_post() ?>
<tr><td class="archive-date"><?php the_time('M j') ?></td><td class="archive-title"><a href="<?php echo get_permalink($post->ID) ?>" rel="bookmark" title="Permanent Link: <?php the_title() ?>"><?php the_title() ?></a></td></tr>
<?php endwhile; ?>
</table>
<br class="clear-margins" />
</div>
<div class="post-page-foot"></div>
</div>
<?php include(TEMPLATEPATH . '/sidebar.php') ?>
<?php get_footer() ?>

57
archive-comic.php Normal file
View File

@ -0,0 +1,57 @@
<?php
/*
Template Name: Comic Archive
*/
?>
<?php get_header() ?>
<style>
.archive-date {
padding: 0 5px 0 0;
font-size: 11px;
white-space: nowrap;
}
.archive-title {
padding: 2px 5px;
line-height: 11px;
border-left: 1px solid #000;
}
.month-table{
border-collapse: collapse;
margin: 0 0 20px 0;
}
</style>
<div id="column">
<div class="post-page-head"></div>
<div class="post-page">
<h2 class="pagetitle"><?php the_title() ?></h2>
<div class="entry">
<?php while (have_posts()) : the_post(); the_content(); endwhile ?>
</div>
<?php $years = $wpdb->get_col("SELECT DISTINCT YEAR(post_date) FROM $wpdb->posts WHERE post_status = 'publish' ORDER BY post_date DESC");
foreach ( $years as $year ) {
if ($year != (0) ) { ?>
<h3><?php echo $year ?></h3>
<table class="month-table">
<?php $comicArchive = new WP_Query(); $comicArchive->query('showposts=10000&cat='.get_all_comic_categories_as_cat_string().'&year='.$year);
while ($comicArchive->have_posts()) : $comicArchive->the_post() ?>
<tr><td class="archive-date"><?php the_time('M j') ?></td><td class="archive-title"><a href="<?php echo get_permalink($post->ID) ?>" rel="bookmark" title="Permanent Link: <?php the_title() ?>"><?php the_title() ?></a></td></tr>
<?php endwhile ?>
</table>
<?php } } ?>
<br class="clear-margins" />
</div>
<div class="post-page-foot"></div>
</div>
<?php include(TEMPLATEPATH . '/sidebar.php') ?>
<?php get_footer() ?>

90
archive.php Normal file
View File

@ -0,0 +1,90 @@
<?php get_header() ?>
<div id="column" class="archive">
<?php if (have_posts()) : ?>
<div class="post-page-head"></div>
<div class="post-page">
<?php $post = $posts[0]; // Hack. Set $post so that the_date() works. ?>
<?php /* Category Archive */ if (is_category()) { ?>
<div class="content"><h2 class="pagetitle">Archive for &#8216;<?php single_cat_title() ?>&#8217;</h2></div>
<?php /* Tag Archive */ } elseif( is_tag() ) { ?>
<div class="content"><h2 class="pagetitle">Posts Tagged &#8216;<?php single_tag_title() ?>&#8217;</h2></div>
<?php /* Daily Archive */ } elseif (is_day()) { ?>
<div class="content"><h2 class="pagetitle">Archive for <?php the_time('F jS, Y') ?></h2></div>
<?php /* Monthly Archive */ } elseif (is_month()) { ?>
<div class="content"><h2 class="pagetitle">Archive for <?php the_time('F, Y') ?></h2></div>
<?php /* Yearly Archive */ } elseif (is_year()) { ?>
<div class="content"><h2 class="pagetitle">Archive for <?php the_time('Y') ?></h2></div>
<?php /* Author Archive */ } elseif (is_author()) { ?>
<div class="content"><h2 class="pagetitle">Author Archive</h2></div>
<?php /* Paged Archive */ } elseif (isset($_GET['paged']) && !empty($_GET['paged'])) { ?>
<div class="content"><h2 class="pagetitle">Archives</h2></div>
<?php } ?>
<br class="clear-margins" />
</div>
<div class="post-page-foot"></div>
<?php $posts = query_posts($query_string.'&order=asc');
while (have_posts()) : the_post() ?>
<?php global $archive_comic_width; if (in_comic_category()) { ?>
<div class="post-comic-head"></div>
<div class="post-comic">
<div class="comicarchiveframe" style="width:<?php echo $archive_comic_width; ?>px;">
<a href="<?php the_permalink() ?>"><img src="<?php the_comic_archive() ?>" alt="<?php the_title() ?>" title="Click for full size." width="<?php echo $archive_comic_width ?>" /><br />
<h3><?php the_title() ?></h3>
<small><?php the_time('F jS, Y') ?></small></a>
</div>
<br class="clear-margins" />
</div>
<div class="post-comic-foot"></div>
<?php } else { ?>
<div class="post-head"></div>
<div class="post archive">
<h3 id="post-<?php the_ID() ?>"><a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link to <?php the_title_attribute() ?>"><?php the_title() ?></a></h3>
<div class="postdate"><?php the_time('F jS, Y') ?></div>
<div class="entry"><?php the_content() ?></div>
<div class="tags">
<?php the_tags('&#9492; Tags: ', ', ', ''); edit_post_link('Edit Post', ' [ ', ' ] ') ?>
</div>
<div class="comment-link">
<?php if ('open' == $post->comment_status) { comments_popup_link('&ldquo;Comment&rdquo;', '&ldquo;1 Comment&rdquo;', '&ldquo;% Comments&rdquo;'); } ?>
</div>
<br class="clear-margins" />
</div>
<div class="post-foot"></div>
<?php } ?>
<?php endwhile ?>
<div class="pagenav">
<div class="pagenav-right"><?php next_posts_link('Next Page &rsaquo;') ?></div>
<div class="pagenav-left"><?php previous_posts_link('&lsaquo; Previous Page') ?></div>
<div class="clear"></div>
</div>
<?php else : ?>
<div class="post-head"></div>
<div class="post">
<h3>No entries found.</h3>
<p>Try another search?</p>
<p><?php include (TEMPLATEPATH . '/searchform.php') ?></p>
<br class="clear-margins" />
</div>
<div class="post-foot"></div>
<?php endif ?>
</div>
<?php include(TEMPLATEPATH . '/sidebar.php') ?>
<?php get_footer() ?>

23
archives.php Normal file
View File

@ -0,0 +1,23 @@
<?php
/*
Template Name: Archives
*/
?>
<?php get_header() ?>
<div id="column">
<div class="post-page-head"></div>
<div class="post-page">
<h2>Archives by Month:</h2>
<ul><?php wp_get_archives('type=monthly') ?></ul>
<h2>Archives by Subject:</h2>
<ul><?php wp_list_categories() ?></ul>
<br class="clear-margins" />
</div>
<div class="post-page-foot"></div>
</div>
<?php include(TEMPLATEPATH . '/sidebar.php') ?>
<?php get_footer() ?>

27
comicpress-config.php Normal file
View File

@ -0,0 +1,27 @@
<?php
//COMIC CATEGORY -the WordPress ID of your comic category (default "3").
$comiccat = "3";
//BLOG CATEGORY - the WordPress ID of your blog category (default "1").
$blogcat = "4";
//COMIC FOLDER - the folder your comics files are located in (default "comics")
$comic_folder = "comics";
//RSS COMIC FOLDER - the folder your comic files are in for the RSS feed (default "comics").
$rss_comic_folder = "comics-rss";
//ARCHIVE COMIC FOLDER - the folder your comic files are in for your archive pages (default "comics").
$archive_comic_folder = "comics-archive";
//ARCHIVE COMIC WIDTH - the width your comics will appear on archive or search results (default "380").
$archive_comic_width = "380";
//RSS COMIC WIDTH - ComicPress Manager plugin users only - the width your comics appear in the RSS feed (default "600").
$rss_comic_width = "600";
//BLOG POSTCOUNT - the number of blog entries to appear on the home page (default "5").
$blog_postcount = "5";
?>

91
comments.php Normal file
View File

@ -0,0 +1,91 @@
<div class="comment-wrap">
<?php
if (!empty($_SERVER['SCRIPT_FILENAME']) && 'comments.php' == basename($_SERVER['SCRIPT_FILENAME']))
die ('Please do not load this page directly. Thanks!');
if ( post_password_required() ) { ?>
<p class="nocomments">This post is password protected. Enter the password to view comments.</p>
<?php
return;
}
if ( have_comments() ) : ?>
<h3 id="comments"><?php comments_number('Discussion&not;', 'Discussion&not;', 'Discussion (%)&not;' );?></h3>
<ol class="commentlist">
<?php wp_list_comments(array('avatar_size'=>64)); ?>
</ol>
<div class="pagenav">
<div class="pagenav-right"><?php next_comments_link('Newer Comments &uarr;') ?></div>
<div class="pagenav-left"><?php previous_comments_link('&darr; Previous Comments') ?></div>
<div class="clear"></div>
</div>
<?php else : // this is displayed if there are no comments so far ?>
<?php if ('open' == $post->comment_status) : ?>
<!-- If comments are open, but there are no comments. -->
<?php else : // comments are closed ?>
<!-- If comments are closed. -->
<p class="nocomments">Comments are closed.</p>
<?php endif; ?>
<?php endif; ?>
<?php if ('open' == $post->comment_status) : ?>
<div id="respond">
<h3><?php comment_form_title( 'Comment&not;', 'Reply to %s&not;' ); ?></h3>
<div class="cancel-comment-reply">
<small><?php cancel_comment_reply_link(); ?></small>
</div>
<?php if ( get_option('comment_registration') && !$user_ID ) : ?>
<p>You must be <a href="<?php echo get_option('siteurl'); ?>/wp-login.php?redirect_to=<?php echo urlencode(get_permalink()); ?>">logged in</a> to post a comment.</p>
<?php else : ?>
<form action="<?php echo get_option('siteurl'); ?>/wp-comments-post.php" method="post" id="commentform">
<?php if ( $user_ID ) : ?>
<p>Logged in as <a href="<?php echo get_option('siteurl'); ?>/wp-admin/profile.php"><?php echo $user_identity; ?></a>. <a href="<?php echo wp_logout_url(get_permalink()); ?>" title="Log out of this account">Log out &raquo;</a></p>
<?php else : ?>
<p><input type="text" name="author" id="author" value="<?php echo $comment_author; ?>" size="22" tabindex="1" />
<label for="author"><small>NAME &mdash; <a href="http://gravatar.com">Get an avatar</a></small></label></p>
<p><input type="text" name="email" id="email" value="<?php echo $comment_author_email; ?>" size="22" tabindex="2" />
<label for="email"><small>EMAIL <?php if ($req) echo "&mdash; Required / not published"; ?> </small></label></p>
<p><input type="text" name="url" id="url" value="<?php echo $comment_author_url; ?>" size="22" tabindex="3" />
<label for="url"><small>WEBSITE</small></label></p>
<?php endif; ?>
<!--<p><small><strong>XHTML:</strong> You can use these tags: <code><?php echo allowed_tags(); ?></code></small></p>-->
<p><textarea name="comment" id="comment" cols="50" rows="5" tabindex="4"></textarea></p>
<p><input name="submit" type="submit" id="submit" tabindex="5" value="Submit Comment" />
<?php comment_id_fields(); ?>
</p>
<div class="clear"></div>
<?php do_action('comment_form', $post->ID); ?>
</form>
<?php endif; // If registration required and not logged in ?>
</div>
<?php endif; ?>
</div>

17
footer.php Normal file
View File

@ -0,0 +1,17 @@
<div class="clear"></div><!-- Clears floated columns and sidebars -->
<div id="footer">
<p>
<?php bloginfo('name') ?> is powered by <a href="http://wordpress.org/">WordPress</a> with <a href="http://comicpress.org/">ComicPress</a>
| Subscribe: <a href="<?php bloginfo('rss2_url') ?>">RSS Feed</a>
<!-- <?php echo get_num_queries() ?> queries. <?php timer_stop(1) ?> seconds. -->
</p>
</div>
</div><!-- Ends "page" -->
<?php wp_footer() ?>
</body>
</html>

635
functions.php Normal file
View File

@ -0,0 +1,635 @@
<?php
include(TEMPLATEPATH . '/comicpress-config.php');
// If any errors occur while searching for a comic file, the error messages will be pushed into here.
$comic_pathfinding_errors = array();
// If ComicPress Manager is installed, use the date format defined there. If not, default to
// Y-m-d.. It's best to use CPM's date definition for improved operability between theme and plugin.
if (defined("CPM_DATE_FORMAT")) {
define("CP_DATE_FORMAT", CPM_DATE_FORMAT);
} else {
define("CP_DATE_FORMAT", "Y-m-d");
}
// If you want to run multiple comics on a single day, define your additional filters here.
// Example: you want to run an additional comic with the filename 2008-01-01-a-my-new-years-comic.jpg.
// Define an additional filter in the list below:
//
// $comic_filename_filters['secondary'] = "{date}-a*.*";
//
// Then show the second comic on your page by calling the_comic with your filter name (PHP tags munged
// to maintain valid file syntax):
//
// < ?php the_comic('secondary'); ? >
//
// Note that it's quite possible to slurp up the wrong file if your expressions are too broad.
$comic_filename_filters = array();
$comic_filename_filters['default'] = "{date}*.*";
// load all of the comic & non-comic category information
add_action('init', 'get_all_comic_categories');
function get_first_comic() {
return get_terminal_post_in_category(get_all_comic_categories_as_cat_string());
}
function get_last_comic() {
return get_terminal_post_in_category(get_all_comic_categories_as_cat_string(), false);
}
/**
* Get the hyperlink to the first comic post in the database.
* @return string The hyperlink to the first comic post, or false.
*/
function get_first_comic_permalink() {
$terminal = get_first_comic();
return !empty($terminal) ? get_permalink($terminal->ID) : false;
}
/**
* Get the hyperlink to the last comic post in the database.
* @return string The hyperlink to the first comic post, or false.
*/
function get_last_comic_permalink() {
$terminal = get_last_comic();
return !empty($terminal) ? get_permalink($terminal->ID) : false;
}
/**
* Given a category ID or an array of category IDs, create an exclusion string that will
* filter out every category but the provided ones.
*/
function get_string_to_exclude_all_but_provided_categories($category) {
$category_ids = array_keys(get_all_category_objects_by_id());
if (!is_array($category)) { $category = array($category); }
return implode(",", array_diff($category_ids, $category));
}
/**
* Get the link to the previous comic from the current one.
*/
function previous_comic_link($format, $link) {
global $non_comic_categories;
previous_post_link($format, $link, false, $non_comic_categories);
}
/**
* Get the link to the next comic from the current one.
*/
function next_comic_link($format, $link) {
global $non_comic_categories;
next_post_link($format, $link, false, $non_comic_categories);
}
/**
* Get the previous comic from the current one.
*/
function get_previous_comic($category = null) { return get_adjacent_comic($category); }
/**
* Get the next comic from the current one.
*/
function get_next_comic($category = null) { return get_adjacent_comic($category, true); }
/**
* Get the adjacent comic from the current one.
*/
function get_adjacent_comic($category, $next = false) {
global $non_comic_categories;
$categories_to_exclude = $non_comic_categories;
if (!is_null($category)) {
$categories_to_exclude = get_string_to_exclude_all_but_provided_categories();
}
return get_adjacent_post(false, $categories_to_exclude, $next);
}
/**
* Find the terminal post in a specific category.
*/
function get_terminal_post_in_category($categoryID, $first = true) {
global $post;
$temp = $wp_query; $wp_query = null;
$sortOrder = $first ? "asc" : "desc";
$terminalComicQuery = new WP_Query(); $terminalComicQuery->query("showposts=1&order=${sortOrder}&cat=${categoryID}");
$terninalPost = false;
if ($terminalComicQuery->have_posts()) {
$terminalPost = reset($terminalComicQuery->posts);
}
$wp_query = null; $wp_query = $temp;
return $terminalPost;
}
/**
* Find a comic file in the filesystem.
* @param string $folder The folder name to search.
* @param string $override_post A WP Post object to use in place of global $post.
* @param string $filter The $comic_filename_filters to use.
* @return string The relative path to the comic file, or false if not found.
*/
function get_comic_path($folder = 'comic', $override_post = null, $filter = 'default') {
global $post, $comic_filename_filters, $comic_folder, $archive_comic_folder, $rss_comic_folder, $comic_pathfinding_errors;
if (isset($comic_filename_filters[$filter])) {
$filter_to_use = $comic_filename_filters[$filter];
} else {
$filter_to_use = '{date}*.*';
}
switch ($folder) {
case "rss": $folder_to_use = $rss_comic_folder; break;
case "archive": $folder_to_use = $archive_comic_folder; break;
case "comic": default: $folder_to_use = $comic_folder; break;
}
$post_to_use = (is_object($override_post)) ? $override_post : $post;
$post_date = mysql2date(CP_DATE_FORMAT, $post_to_use->post_date);
$filter_with_date = str_replace('{date}', $post_date, $filter_to_use);
if (count($results = glob("${folder_to_use}/${filter_with_date}")) > 0) {
return reset($results);
}
$comic_pathfinding_errors[] = sprintf(__("Unable to find the file in the <strong>%s</strong> folder that matched the pattern <strong>%s</strong>. Check your WordPress and ComicPress settings.", 'comicpress'), $folder, $filter_with_date);
return false;
}
/**
* Find a comic file in the filesystem and return an absolute URL to that file.
* @param string $folder The folder name to search.
* @param string $override_post A WP Post object to use in place of global $post.
* @param string $filter The $comic_filename_filters to use.
* @return string The absolute URL to the comic file, or false if not found.
*/
function get_comic_url($folder = 'comic', $override_post = null, $filter = 'default') {
if (($result = get_comic_path($folder, $override_post, $filter)) !== false) {
return get_option('home') . '/' . $result;
}
return false;
}
/**
* Turn the tree of comics categories into a string to be fed into wp_query functions.
*/
function get_all_comic_categories_as_cat_string() {
global $all_comic_categories_as_string, $category_tree;
if (empty($all_comic_categories_as_string)) {
$categories = array();
foreach ($category_tree as $node) {
$parts = explode("/", $node);
$categories[] = end($parts);
}
$all_comic_categories_as_string = implode(",", $categories);
}
return $all_comic_categories_as_string;
}
/**
* Turn the list of categories into a hash table of category objects.
*/
function get_all_category_objects_by_id() {
global $categories_by_id;
if (empty($categories_by_id)) {
$categories_by_id = array();
foreach (get_categories("hide_empty=0") as $category_object) {
$categories_by_id[$category_object->term_id] = $category_object;
}
}
return $categories_by_id;
}
/**
* Parse all categories and sort them into comics and non-comics categories.
*/
function get_all_comic_categories() {
global $comiccat, $category_tree, $non_comic_categories;
$categories_by_id = get_all_category_objects_by_id();
foreach (array_keys($categories_by_id) as $category_id) {
$category_tree[] = $categories_by_id[$category_id]->parent . '/' . $category_id;
}
do {
$all_ok = true;
for ($i = 0; $i < count($category_tree); ++$i) {
$current_parts = explode("/", $category_tree[$i]);
if (reset($current_parts) != 0) {
$all_ok = false;
for ($j = 0; $j < count($category_tree); ++$j) {
$j_parts = explode("/", $category_tree[$j]);
if (end($j_parts) == reset($current_parts)) {
$category_tree[$i] = implode("/", array_merge($j_parts, array_slice($current_parts, 1)));
break;
}
}
}
}
} while (!$all_ok);
$non_comic_tree = array();
if (get_option('comicpress-enable-storyline-support') == 1) {
$result = get_option("comicpress-storyline-category-order");
if (!empty($result)) {
$category_tree = explode(",", $result);
}
$non_comic_tree = array_keys($categories_by_id);
foreach ($category_tree as $node) {
$parts = explode("/", $node);
$category_id = end($parts);
if ($parts[1] == $comiccat) {
if (($index = array_search($category_id, $non_comic_tree)) !== false) {
array_splice($non_comic_tree, $index, 1);
}
}
}
} else {
$new_category_tree = array();
foreach ($category_tree as $node) {
$parts = explode("/", $node);
if ($parts[1] == $comiccat) {
$new_category_tree[] = $node;
} else {
$non_comic_tree[] = end($parts);
}
}
$category_tree = $new_category_tree;
}
$non_comic_categories = implode(" and ", $non_comic_tree);
}
/**
* Return true if the current post is in the comics category or a child category.
*/
function in_comic_category() {
global $post, $category_tree;
$comic_categories = array();
foreach ($category_tree as $node) {
$comic_categories[] = end(explode("/", $node));
}
return (count(array_intersect($comic_categories, wp_get_post_categories($post->ID))) > 0);
}
// ComicPress Template Functions
function the_comic($filter = 'default') { echo get_comic_url('comic', null, $filter); }
//The following is deprecated...
function comic_display($filter = 'default') { echo get_comic_url('comic', null, $filter); }
function the_comic_archive($filter = 'default') { echo get_comic_url('archive', null, $filter); }
//The following is deprecated...
function comic_archive($filter = 'default') { echo get_comic_url('archive', null, $filter); }
function the_comic_rss($filter = 'default') { echo get_comic_url('rss', null, $filter); }
//The following is deprecated...
function comic_rss($filter = 'default') { echo get_comic_url('rss', null, $filter); }
/**
* Display the list of Storyline categories.
*/
function comicpress_list_storyline_categories($args = "") {
global $category_tree;
$defaults = array(
'style' => 'list', 'title_li' => __('Storyline')
);
$r = wp_parse_args($args, $defaults);
extract($r);
$categories_by_id = get_all_category_objects_by_id();
$output = '';
if ($style == "list") { $output .= '<li class="categories storyline">'; }
if ($title_li && ($style == "list")) { $output .= $title_li; }
if ($style == "list") { $output .= "<ul>"; }
$current_depth = 0;
foreach ($category_tree as $node) {
$parts = explode("/", $node);
$category_id = end($parts);
$target_depth = count($parts) - 2;
if ($target_depth > $current_depth) {
$output .= str_repeat("<li><ul>", ($target_depth - $current_depth));
}
if ($target_depth < $current_depth) {
$output .= str_repeat("</ul></li>", ($current_depth - $target_depth));
}
$output .= '<li><a href="' . get_category_link($category_id) . '">';
$output .= $categories_by_id[$category_id]->cat_name;
$output .= "</a></li>";
$current_depth = $target_depth;
}
if ($current_depth > 0) {
$output .= str_repeat("</ul></li>", $current_depth);
}
if ($style == "list") { $output .= "</ul></li>"; }
echo $output;
}
/**
* Display text when image (comic) is hovered
* Text is taken from a custom field named "hovertext"
*/
function the_hovertext() {
$hovertext = get_post_meta( get_the_ID(), "hovertext", true );
echo (empty($hovertext)) ? get_the_title() : $hovertext;
}
/**
* Display the comic transcript
* Transcript must be entered into a custom field named "transcript"
* @param string $displaymode, "raw" (straight from the field), "br" (includes html line breaks), "styled" (fully css styled with JavaScript expander)
*/
function the_transcript($displaymode = 'raw') {
$transcript = get_post_meta( get_the_ID(), "transcript", true );
switch ($displaymode) {
case "raw":
echo $transcript;
break;
case "br":
echo nl2br($transcript);
break;
case "styled":
if (!empty($transcript)) { ?>
<script type='text/javascript'>
<!--
function toggle_expander(id) {
var e = document.getElementById(id);
if(e.style.height == 'auto')
e.style.height = '1px';
else
e.style.height = 'auto';
}
//-->
</script>
<div class="transcript-border"><div id="transcript"><a href="javascript:toggle_expander('transcript-content');" class="transcript-title">&darr; Transcript</a><div id="transcript-content"><?php echo nl2br($transcript); ?><br /><br /></div></div></div>
<script type='text/javascript'>
<!--
document.getElementById('transcript-content').style.height = '1px';
//-->
</script><?php
}
break;
}
}
//Insert the comic image into the RSS feed
function comic_feed() { ?>
<p><a href="<?php the_permalink() ?>"><img src="<?php the_comic_rss() ?>" border="0" alt="<?php the_title() ?>" title="<?php the_hovertext() ?>" /></a></p><?php
}
function insert_comic_feed($content) {
if (is_feed() && in_comic_category()) {
return comic_feed() . $content;
} else {
return $content;
}
}
add_filter('the_content','insert_comic_feed');
//Generate a random comic page - to use simply create a URL link to "/?randomcomic"
function random_comic() {
$randomComicQuery = new WP_Query(); $randomComicQuery->query('showposts=1&orderby=rand&cat='.get_all_comic_categories_as_cat_string());
while ($randomComicQuery->have_posts()) : $randomComicQuery->the_post();
$random_comic_id = get_the_ID();
endwhile;
wp_redirect( get_permalink( $random_comic_id ) );
exit;
}
if ( isset( $_GET['randomcomic'] ) )
add_action( 'template_redirect', 'random_comic' );
// Register Sidebar and Define Widgets
if ( function_exists('register_sidebar') )
register_sidebar();
function widget_comicpress_calendar() { ?>
<li>
<?php get_calendar(); ?>
</li>
<?php } if ( function_exists('register_sidebar_widget') )
register_sidebar_widget(__('Calendar'), 'widget_comicpress_calendar');
function widget_comicpress_search() { ?>
<li>
<?php include (TEMPLATEPATH . '/searchform.php'); ?>
</li>
<?php } if ( function_exists('register_sidebar_widget') )
register_sidebar_widget(__('Search'), 'widget_comicpress_search');
function widget_comicpress_search_transcript() { ?>
<li>
<?php include (TEMPLATEPATH . '/searchform-transcript.php'); ?>
</li>
<?php } if ( function_exists('register_sidebar_widget') )
register_sidebar_widget(__('Search Transcripts'), 'widget_comicpress_search_transcript');
function widget_comicpress_latest_comics() { ?>
<li>
<h2>Latest Comics</h2>
<ul>
<?php global $post;
$latestcomics = get_posts('numberposts=5&category='.get_all_comic_categories_as_cat_string());
foreach($latestcomics as $post) : ?>
<li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></li>
<?php endforeach; ?>
</ul>
</li>
<?php } if ( function_exists('register_sidebar_widget') )
register_sidebar_widget(__('Latest Comics'), 'widget_comicpress_latest_comics');
function widget_comicpress_random_comic() { ?>
<li>
<h2><a href="?randomcomic"><span class="random-comic-icon">?</span> Random Comic</a></h2>
</li>
<?php } if ( function_exists('register_sidebar_widget') )
register_sidebar_widget(__('Random Comic'), 'widget_comicpress_random_comic');
function widget_comicpress_archive_dropdown() { ?>
<li class="archive-dropdown-wrap">
<select name="archive-dropdown" class="archive-dropdown" onChange='document.location.href=this.options[this.selectedIndex].value;'>
<option value=""><?php echo attribute_escape(__('Archives...')); ?></option>
<?php wp_get_archives('type=monthly&format=option&show_post_count=1'); ?> </select>
</li>
<?php } if ( function_exists('register_sidebar_widget') )
register_sidebar_widget(__('Archive Dropdown'), 'widget_comicpress_archive_dropdown');
function widget_comicpress_comic_bookmark() { ?>
<div class="comic-bookmark">
<script language="javascript" type="text/javascript">
<!--
/* Bookmark Config Settings */
var cl = 31;
var imgTag = '<?php bloginfo('template_directory'); ?>/1.gif'; //add tag image.
var imgClearOff = '<?php bloginfo('template_directory'); ?>/3a.gif'; //no comic tagged, clear not possible
var imgGotoOff = '<?php bloginfo('template_directory'); ?>/2a.gif'; //no comic tagged, goto not possible
var imgClearOn = '<?php bloginfo('template_directory'); ?>/3.gif'; //clear a tag, shows when comic previously tagged
var imgGotoOn = '<?php bloginfo('template_directory'); ?>/2.gif'; //shows when a comic is tagged
var imgInfo = '<?php bloginfo('template_directory'); ?>/4.gif'; //img that displays the help
var comicDir = '/'; //alter this if you run multiple comics in different directories on your site.
/* Now write out the applicable links */
createCookie('t', 1);
var c = readCookie('t');
if(c && document.getElementById) {
var l = readCookie('bm');
var gt = imgGotoOff;
var ct = imgClearOff;
if(l) {
gt = imgGotoOn;
ct = imgClearOn;
}
document.write('<div id="bmh" style="width: 173px; margin: 15px 0 0 0; padding: 5px; position: absolute; color: #eee; font-size: 11px; background-color:#222; border: 1px solid #ccc; visibility: hidden;"><b>COMIC BOOKMARK</b><br />Click "Tag Page" to bookmark a comic page. When you return to the site, click "Goto Tag" to continue where you left off.</div>');
<?php if (is_home()) { ?>
document.write('<a href="#" onClick="bmhome();return false;"><img src="'+imgTag+'" alt="Tag This Page" border="0"></a>');
document.write('<a href="#" onClick="gto();return false;"><img src="'+gt+'" alt="Goto Tag" border="0" id="gtc"></a>');
document.write('<a href="#" onClick="bmc();return false;"><img src="'+ct+'" alt="Clear Tag" border="0" id="rmc"></a>');
document.write('<a href="#" onMouseOver="document.getElementById(\'bmh\').style.visibility=\'visible\';" onMouseOut="document.getElementById(\'bmh\').style.visibility=\'hidden\';" onClick="return false;"><img src="'+imgInfo+'" alt="" border="0"></a>');
<?php } elseif (is_single() & in_comic_category()) { ?>
document.write('<a href="#" onClick="bm();return false;"><img src="'+imgTag+'" alt="Tag This Page" border="0"></a>');
document.write('<a href="#" onClick="gto();return false;"><img src="'+gt+'" alt="Goto Tag" border="0" id="gtc"></a>');
document.write('<a href="#" onClick="bmc();return false;"><img src="'+ct+'" alt="Clear Tag" border="0" id="rmc"></a>');
document.write('<a href="#" onMouseOver="document.getElementById(\'bmh\').style.visibility=\'visible\';" onMouseOut="document.getElementById(\'bmh\').style.visibility=\'hidden\';" onClick="return false;"><img src="'+imgInfo+'" alt="" border="0"></a>');
<?php } ?>
}
/* Below are our functions for this little script */
<?php $comicFrontpage = new WP_Query(); $comicFrontpage->query('showposts=1&cat='.get_all_comic_categories_as_cat_string());
while ($comicFrontpage->have_posts()) : $comicFrontpage->the_post(); ?>
function bmhome() {
if(document.getElementById) {
document.getElementById('gtc').src = imgGotoOn;
document.getElementById('rmc').src = imgClearOn;
}
createCookie("bm", "<?php the_permalink(); ?>", cl);
}
<?php endwhile; ?>
function bm() {
if(document.getElementById) {
document.getElementById('gtc').src = imgGotoOn;
document.getElementById('rmc').src = imgClearOn;
}
createCookie("bm", window.location, cl);
}
function bmc() {
if(document.getElementById) {
document.getElementById('gtc').src = imgGotoOff;
document.getElementById('rmc').src = imgClearOff;
}
createCookie("bm","",-1);
}
function gto() {
var g = readCookie('bm');
if(g) {
window.location = g;
}
}
/* The follow functions have been borrowed from Peter-Paul Koch. Please find them here: http://www.quirksmode.org */
function createCookie(name,value,days) {
if (days) {
var date = new Date();
date.setTime(date.getTime()+(days*24*60*60*1000));
var expires = "; expires="+date.toGMTString();
} else var expires = "";
document.cookie = name+"="+value+expires+"; path="+comicDir;
}
function readCookie(name) {
var nameEQ = name + "=";
var ca = document.cookie.split(';');
for(var i=0;i < ca.length;i++) {
var c = ca[i];
while (c.charAt(0)==' ') c = c.substring(1,c.length);
if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
}
return null;
}
//-->
</script>
</div>
<?php } if ( function_exists('register_sidebar_widget') )
register_sidebar_widget(__('Comic Bookmark'), 'widget_comicpress_comic_bookmark');
/*
Plugin Name: Search Custom Fields
Plugin URI: http://guff.szub.net/search-custom-fields/
Description: Search post custom field values. Also provides for an alternative theme 'search' template: search-custom.php.
Author: Kaf Oseo
Version: R1.beta1
Author URI: http://szub.net
Copyright (c) 2006 Kaf Oseo (http://szub.net)
Search Custom Fields is released under the GNU General Public License
(GPL) http://www.gnu.org/licenses/gpl.txt
This is a WordPress 2 plugin (http://wordpress.org).
*/
function szub_search_custom_join($join) {
global $wpdb;
if( is_search() && szub_is_search_key() ) {
$join = " LEFT JOIN $wpdb->postmeta ON $wpdb->posts.ID = $wpdb->postmeta.post_id ";
}
return $join;
}
add_filter('posts_join', 'szub_search_custom_join');
function szub_search_custom_where($where) {
global $wp_query, $wp_version, $wpdb;
if( !empty($wp_query->query_vars['s']) && szub_is_search_key() ) {
$search = $wp_query->query_vars['s'];
$key = $_GET['key'];
$status = ($wp_version >= 2.1) ? 'post_type = \'post\' AND post_status = \'publish\'' : 'post_status = \'publish\'';
$where = " AND $wpdb->postmeta.meta_key = '$key' AND $wpdb->postmeta.meta_value LIKE '%$search%' AND $status ";
}
return $where;
}
add_filter('posts_where', 'szub_search_custom_where');
function szub_search_custom_template($template) {
if( is_search() && szub_is_search_key() && file_exists(TEMPLATEPATH . '/search-transcript.php') )
$template = TEMPLATEPATH . '/search-transcript.php';
if( !$template )
$template = get_query_template('search');
return $template;
}
add_filter('search_template', 'szub_search_custom_template');
function szub_is_search_key($key='') {
if( isset($_GET['key']) ) {
if( !empty($_GET['key']) || (!empty($key) && ($key = $_GET['key'])) )
return true;
}
return false;
}
?>

49
header.php Normal file
View File

@ -0,0 +1,49 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" <?php language_attributes() ?>>
<head profile="http://gmpg.org/xfn/11">
<title><?php bloginfo('name') ?> <?php if ( is_single() ) { ?> &raquo; Archive <?php } wp_title() ?></title>
<meta http-equiv="Content-Type" content="<?php bloginfo('html_type') ?>; charset=<?php bloginfo('charset') ?>" />
<link rel="stylesheet" href="<?php bloginfo('stylesheet_url') ?>" type="text/css" media="screen" />
<link rel="alternate" type="application/rss+xml" title="<?php bloginfo('name') ?> RSS Feed" href="<?php bloginfo('rss2_url') ?>" />
<link rel="alternate" type="application/atom+xml" title="<?php bloginfo('name') ?> Atom Feed" href="<?php bloginfo('atom_url') ?>" />
<link rel="pingback" href="<?php bloginfo('pingback_url') ?>" />
<?php wp_head() ?>
<!--[if lt IE 7]><script type="text/javascript" src="<?php bloginfo('template_directory') ?>/ie6submenus.js"></script><![endif]-->
</head>
<body>
<div id="page"><!-- Defines entire site width - Ends in Footer -->
<div id="header">
<h1><a href="<?php echo get_settings('home') ?>"><?php bloginfo('name') ?></a></h1>
<div class="description"><?php bloginfo('description') ?></div>
</div>
<div id="menubar">
<div id="menunav">
<?php if (is_home()) {
$comicFrontpage = new WP_Query(); $comicFrontpage->query('showposts=1&cat='.get_all_comic_categories_as_cat_string());
while ($comicFrontpage->have_posts()) : $comicFrontpage->the_post();
global $wp_query; $wp_query->is_single = true;
previous_comic_link('%link', '&lsaquo;');
$wp_query->is_single = false;
endwhile;
} elseif (is_single() & in_comic_category()) {
previous_comic_link('%link', '&lsaquo;');
next_comic_link('%link', '&rsaquo;');
} ?>
</div>
<ul id="menu">
<li><a href="<?php bloginfo('url') ?>">Home</a></li>
<?php wp_list_pages('sort_column=menu_order&depth=4&title_li=') ?>
<li><a href="<?php bloginfo('rss2_url') ?>">Subscribe</a></li>
</ul>
<div class="clear"></div>
</div>

14
ie6submenus.js Normal file
View File

@ -0,0 +1,14 @@
//Suckerfish Dropdown for IE6
sfHover = function() {
var sfEls = document.getElementById("menu").getElementsByTagName("LI");
for (var i=0; i<sfEls.length; i++) {
sfEls[i].onmouseover=function() {
this.className+=" sfhover";
}
sfEls[i].onmouseout=function() {
this.className=this.className.replace(new RegExp(" sfhover\\b"), "");
}
}
}
if (window.attachEvent) window.attachEvent("onload", sfHover);

69
image.php Normal file
View File

@ -0,0 +1,69 @@
<?php get_header() ?>
<div id="column">
<?php if (have_posts()) : while (have_posts()) : the_post() ?>
<div class="post-page-head"></div>
<div class="post-page" id="post-<?php the_ID() ?>">
<h2 class="pagetitle">
<a href="<?php echo get_permalink($post->post_parent) ?>" rev="attachment"><?php echo get_the_title($post->post_parent) ?></a>
</h2>
<div class="gallery-image">
<a href="<?php echo wp_get_attachment_url($post->ID) ?>" target="_blank" title="Click for full size." ><img src="<?php echo wp_get_attachment_url($post->ID) ?>" alt="<?php the_title() ?>" /></a>
</div>
<div class="gallery-caption">
<?php the_excerpt() ?>
</div>
<div class="imagenav-wrap">
<div class="imagenav">
<div class="imagenav-bg">
<?php previous_image_link() ?>
</div>
<div class="imagenav-arrow">
&lsaquo;
</div>
<div class="imagenav-link">
<?php previous_image_link() ?>
</div>
</div>
<div class="imagenav-center">
<a href="<?php echo wp_get_attachment_url($post->ID) ?>" target="_blank" title="Click for full size." class="imagetitle"><?php the_title() ?></a><br />
<a href="<?php echo get_permalink($post->post_parent) ?>" rev="attachment">&larr; Back to Gallery</a>
</div>
<div class="imagenav">
<div class="imagenav-bg">
<?php next_image_link() ?>
</div>
<div class="imagenav-arrow">
&rsaquo;
</div>
<div class="imagenav-link">
<?php next_image_link() ?>
</div>
</div>
<div class="clear"></div>
</div>
<?php the_content() ?>
<br class="clear-margins" />
</div>
<div class="post-page-foot"></div>
<?php comments_template() ?>
<?php endwhile; else: ?>
<div class="post-page-head"></div>
<div class="post-page">
<p>Sorry, no image matched your criteria.</p>
<br class="clear-margins" />
</div>
<div class="post-page-foot"></div>
<?php endif ?>
</div>
<?php include(TEMPLATEPATH . '/sidebar.php') ?>
<?php get_footer() ?>

90
index.php Normal file
View File

@ -0,0 +1,90 @@
<?php get_header(); global $blog_postcount, $blogcat; $first_comic = get_first_comic_permalink() ?>
<?php if (!(is_paged())) { ?>
<?php $wp_query->in_the_loop = true; $comicFrontpage = new WP_Query(); $comicFrontpage->query('showposts=1&cat='.get_all_comic_categories_as_cat_string());
while ($comicFrontpage->have_posts()) : $comicFrontpage->the_post() ?>
<div id="comic-head"></div>
<div id="comic">
<img src="<?php the_comic() ?>" alt="<?php the_title() ?>" title="<?php the_hovertext() ?>" />
</div>
<div id="comic-foot"></div>
<?php endwhile ?>
<div id="column">
<?php while ($comicFrontpage->have_posts()) : $comicFrontpage->the_post() ?>
<div class="post-comic-head"></div>
<div class="post-comic">
<div class="nav">
<div class="nav-first"><a href="<?php echo $first_comic ?>" title="Go to the First Comic">&lsaquo;&lsaquo; First</a></div>
<div class="nav-previous"><?php global $wp_query; $wp_query->is_single = true; previous_comic_link('%link', '&lsaquo; Previous'); $wp_query->is_single = false ?></div>
</div>
<div class="comicdate">
<?php the_time('F jS, Y') ?>
</div>
<div class="clear"></div>
<?php if (get_option('comicpress-enable-storyline-support') == 1) { ?>
<ul class="storyline-cats"><li class="storyline-root"><?php the_category(' &raquo; </li><li>', multiple) ?></li></ul>
<?php } ?>
<h2>
<a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link to <?php the_title() ?>"><?php the_title() ?></a>
</h2>
<div class="entry">
<?php the_content('&darr; Read the rest of this entry...') ?>
</div>
<?php the_transcript('styled') ?>
<div class="tags">
<?php the_tags('&#9492; Tags: ', ', ', ''); edit_post_link('Edit Post', ' [ ', ' ] ') ?>
</div>
<div class="comment-link">
<?php if ('open' == $post->comment_status) { comments_popup_link('&ldquo;Comment&rdquo;', '&ldquo;1 Comment&rdquo;', '&ldquo;% Comments&rdquo;'); } ?>
</div>
<br class="clear-margins" />
</div>
<div class="post-comic-foot"></div>
<?php endwhile ?>
<div id="blogheader"><!-- This area can be used for a heading above your main page blog posts --></div>
<?php } else { ?>
<div id="column">
<?php } ?>
<?php $temp = $wp_query; $wp_query= null; $wp_query = new WP_Query(); $wp_query->query('showposts='.$blog_postcount.'&cat='.$blogcat.'&paged='.$paged);
while ($wp_query->have_posts()) : $wp_query->the_post() ?>
<div class="post-head"></div>
<div class="post" id="post-<?php the_ID() ?>">
<h3>
<a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link to <?php the_title() ?>"><?php the_title() ?></a>
</h3>
<div class="postdate">
<?php the_time('F jS, Y') ?>
</div>
<div class="entry">
<?php the_content('&darr; Read the rest of this entry...') ?>
</div>
<div class="tags">
<?php the_tags('&#9492; Tags: ', ', ', ''); edit_post_link('Edit Post', ' [ ', ' ] ') ?>
</div>
<div class="comment-link">
<?php if ('open' == $post->comment_status) { comments_popup_link('&ldquo;Comment&rdquo;', '&ldquo;1 Comment&rdquo;', '&ldquo;% Comments&rdquo;'); } ?>
</div>
<div class="clear-margins"><br /></div>
</div>
<div class="post-foot"></div>
<?php endwhile ?>
<div class="pagenav">
<div class="pagenav-right"><?php previous_posts_link('Newer Entries &uarr;') ?></div>
<div class="pagenav-left"><?php next_posts_link('&darr; Previous Entries') ?></div>
<div class="clear"></div>
</div>
<?php $wp_query = null; $wp_query = $temp ?>
</div>
<?php include(TEMPLATEPATH . '/sidebar.php') ?>
<?php get_footer() ?>

25
links.php Normal file
View File

@ -0,0 +1,25 @@
<?php
/*
Template Name: Links
*/
?>
<?php get_header() ?>
<div id="column">
<div class="post-page-head">
<div class="post-page">
<h2 class="pagetitle"><?php the_title() ?></h2>
<ul>
<?php wp_list_bookmarks() ?>
</ul>
<br class="clear-margins" />
</div>
<div class="post-page-foot"></div>
</div>
<?php include(TEMPLATEPATH . '/sidebar.php') ?>
<?php get_footer() ?>

21
page.php Normal file
View File

@ -0,0 +1,21 @@
<?php get_header() ?>
<div id="column">
<?php if (have_posts()) : while (have_posts()) : the_post() ?>
<div class="post-page-head"></div>
<div class="post-page" id="post-<?php the_ID() ?>">
<h2 class="pagetitle"><?php the_title() ?></h2>
<div class="entry">
<?php the_content() ?>
<?php wp_link_pages(array('before' => '<p><strong>Pages:</strong> ', 'after' => '</p>', 'next_or_number' => 'number')) ?>
</div>
<?php edit_post_link('Edit this page.', '<p>', '</p>') ?>
<br class="clear-margins" />
</div>
<div class="post-page-foot"></div>
<?php endwhile; endif; ?>
</div>
<?php include(TEMPLATEPATH . '/sidebar.php') ?>
<?php get_footer() ?>

BIN
screenshot.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 34 KiB

67
search-transcript.php Normal file
View File

@ -0,0 +1,67 @@
<?php get_header() ?>
<div id="column" class="archive">
<div class="post-page-head"></div>
<div class="post-page">
<h2 class="pagetitle">Transcript Search for &lsquo;<?php the_search_query() ?>&rsquo;</h2>
</div>
<div class="post-page-foot"></div>
<?php if (have_posts()) : ?>
<?php $posts = query_posts($query_string.'&order=asc');
while (have_posts()) : the_post() ?>
<?php if (in_comic_category()) { ?>
<div class="post-comic-head"></div>
<div class="post-comic">
<div class="comicarchiveframe" style="width:<?php echo $archive_comic_width ?>px;">
<a href="<?php the_permalink() ?>"><img src="<?php the_comic_archive() ?>" alt="<?php the_title() ?>" title="<?php the_transcript() ?>" width="<?php echo $archive_comic_width ?>" /><br />
<h3><?php the_title() ?></h3>
<small><?php the_time('F jS, Y') ?></small></a>
</div>
<br class="clear-margins" />
</div>
<div class="post-comic-foot"></div>
<?php } else { ?>
<div class="post-head"></div>
<div class="post">
<h3><a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link: <?php the_title() ?>"><?php the_title() ?></a></h3>
<div class="postdate"><?php the_time('F jS, Y') ?></div>
<?php the_excerpt() ?>
<br class="clear-margins" />
</div>
<div class="post-foot"></div>
<?php } ?>
<?php endwhile; ?>
<div class="pagenav">
<div class="pagenav-right"><?php next_posts_link('Next Page &rsaquo;') ?></div>
<div class="pagenav-left"><?php previous_posts_link('&lsaquo; Previous Page') ?></div>
<div class="clear"></div>
</div>
<?php else : ?>
<div class="post-page-head"></div>
<div class="post-page">
<h3>No transcripts found.</h3>
<p>Try another search?</p>
<p><?php include (TEMPLATEPATH . '/searchform-transcript.php') ?></p>
<br class="clear-margins" />
</div>
<div class="post-page-foot"></div>
<?php endif; ?>
</div>
<?php include(TEMPLATEPATH . '/sidebar.php') ?>
<?php get_footer() ?>

67
search.php Normal file
View File

@ -0,0 +1,67 @@
<?php get_header() ?>
<div id="column" class="archive">
<div class="post-page-head"></div>
<div class="post-page">
<h2 class="pagetitle">Search Results for &lsquo;<?php the_search_query() ?>&rsquo;</h2>
</div>
<div class="post-page-foot"></div>
<?php if (have_posts()) : ?>
<?php $posts = query_posts($query_string.'&order=asc');
while (have_posts()) : the_post() ?>
<?php global $archive_comic_width; if (in_comic_category()) { ?>
<div class="post-comic-head"></div>
<div class="post-comic">
<div class="comicarchiveframe" style="width:<?php echo $archive_comic_width ?>px;">
<a href="<?php the_permalink() ?>"><img src="<?php the_comic_archive() ?>" alt="Click for full size." title="Click for full size" width="<?php echo $archive_comic_width ?>" /><br />
<h3><?php the_title() ?></h3>
<small><?php the_time('F jS, Y') ?></small></a>
</div>
<br class="clear-margins" />
</div>
<div class="post-comic-foot"></div>
<?php } else { ?>
<div class="post-head"></div>
<div class="post">
<h3><a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link: <?php the_title() ?>"><?php the_title() ?></a></h3>
<div class="postdate"><?php the_time('F jS, Y') ?></div>
<?php the_excerpt() ?>
<br class="clear-margins" />
</div>
<div class="post-foot"></div>
<?php } ?>
<?php endwhile ?>
<div class="pagenav">
<div class="pagenav-right"><?php next_posts_link('Next Page &rsaquo;') ?></div>
<div class="pagenav-left"><?php previous_posts_link('&lsaquo; Previous Page') ?></div>
<div class="clear"></div>
</div>
<?php else : ?>
<div class="post-page-head"></div>
<div class="post-page">
<h3>No entries found.</h3>
<p>Try another search?</p>
<p><?php include (TEMPLATEPATH . '/searchform.php') ?></p>
<br class="clear-margins" />
</div>
<div class="post-page-foot"></div>
<?php endif ?>
</div>
<?php include(TEMPLATEPATH . '/sidebar.php') ?>
<?php get_footer() ?>

View File

@ -0,0 +1,6 @@
<form method="get" id="searchform-transcript" action="<?php bloginfo('url'); ?>/">
<div>
<input type="text" value="Search Transcripts..." name="s" id="s-transcript" onfocus="this.value=(this.value=='Search Transcripts...') ? '' : this.value;" onblur="this.value=(this.value=='') ? 'Search Transcripts...' : this.value;" /><input type="hidden" name="key" value="transcript" />
<input type="submit" id="searchsubmit-transcript" value="&raquo;" />
</div>
</form>

6
searchform.php Normal file
View File

@ -0,0 +1,6 @@
<form method="get" id="searchform" action="<?php bloginfo('url'); ?>/">
<div>
<input type="text" value="Search Site..." name="s" id="s" onfocus="this.value=(this.value=='Search Site...') ? '' : this.value;" onblur="this.value=(this.value=='') ? 'Search Site...' : this.value;" />
<input type="submit" id="searchsubmit" value="&raquo;" />
</div>
</form>

41
sidebar.php Normal file
View File

@ -0,0 +1,41 @@
<div id="sidebar">
<ul>
<?php if ( !function_exists('dynamic_sidebar') || !dynamic_sidebar() ) : ?>
<?php widget_comicpress_comic_bookmark() ?>
<li>
<?php get_calendar(); ?>
</li>
<li>
<h2>Menu</h2>
<ul>
<?php wp_list_pages('title_li=' ); ?>
</ul>
</li>
<?php widget_comicpress_latest_comics(); ?>
<li>
<h2>Monthly Archives</h2>
<ul>
<?php wp_get_archives('type=monthly'); ?>
</ul>
</li>
<?php wp_list_categories('title_li=<h2>Categories</h2>'); ?>
<?php wp_list_bookmarks(); ?>
<li>
<?php include (TEMPLATEPATH . '/searchform.php'); ?>
</li>
<?php endif; ?>
</ul>
</div>

85
single.php Normal file
View File

@ -0,0 +1,85 @@
<?php get_header(); $first_comic = get_first_comic_permalink(); $last_comic = get_last_comic_permalink() ?>
<?php while (have_posts()) : the_post(); if (in_comic_category()) { ?>
<div id="comic-head"></div>
<div id="comic">
<img src="<?php the_comic() ?>" alt="<?php the_title() ?>" title="<?php the_hovertext() ?>" />
</div>
<div id="comic-foot"></div>
<?php } endwhile ?>
<div id="column">
<?php if (have_posts()) : while (have_posts()) : the_post() ?>
<?php if (in_comic_category()) { ?>
<div class="post-comic-head"></div>
<div class="post-comic" id="post-<?php the_ID() ?>">
<div class="comicdate">
<div class="nav">
<?php if ( get_permalink() != $first_comic ) { ?><div class="nav-first"><a href="<?php echo $first_comic ?>">&lsaquo;&lsaquo; First</a></div><?php } ?>
<div class="nav-previous"><?php previous_comic_link('%link', '&lsaquo; Previous') ?></div>
<div class="nav-next"><?php next_comic_link('%link', 'Next &rsaquo;') ?></div>
<?php if ( get_permalink() != $last_comic ) { ?><div class="nav-last"><a href="<?php echo $last_comic ?>">Last &rsaquo;&rsaquo;</a></div><?php } ?>
</div>
<?php the_time('F jS, Y') ?>
</div>
<?php if (get_option('comicpress-enable-storyline-support') == 1) { ?>
<ul class="storyline-cats"><li class="storyline-root"><?php the_category(' &raquo; </li><li>', 'multiple') ?></li></ul>
<?php } ?>
<h2><?php the_title() ?></h2>
<div class="entry">
<?php the_content() ?>
<?php the_transcript('styled') ?>
<div class="tags">
<?php the_tags('&#9492; Tags: ', ', ', ''); edit_post_link('Edit Post', ' [ ', ' ] ') ?>
</div>
<?php wp_link_pages(array('before' => '<p><strong>Pages:</strong> ', 'after' => '</p>', 'next_or_number' => 'number')) ?>
</div>
<br class="clear-margins" />
</div>
<div class="post-comic-foot"></div>
<?php } else { ?>
<div class="post-head"></div>
<div class="post" id="post-<?php the_ID() ?>">
<div class="nav-blog">
<div class="nav-blog-previous"><?php previous_post_link('%link','&lsaquo; Previous', TRUE) ?></div>
<div class="nav-blog-next"><?php next_post_link('%link','Next &rsaquo;', TRUE) ?></div>
</div>
<div class="clear"></div>
<h2><?php the_title() ?></h2>
<div class="postdate"><?php the_time('F jS, Y') ?></div>
<div class="entry">
<?php the_content() ?>
<?php the_transcript('styled') ?>
<div class="tags">
<?php the_tags('&#9492; Tags: ', ', ', ''); edit_post_link('Edit Post', ' [ ', ' ] ') ?>
</div>
<?php wp_link_pages(array('before' => '<p><strong>Pages:</strong> ', 'after' => '</p>', 'next_or_number' => 'number')) ?>
</div>
<br class="clear-margins" />
</div>
<div class="post-foot"></div>
<?php } ?>
<?php comments_template() ?>
<?php endwhile; else: ?>
<div class="post-head"></div>
<div class="post">
<p>Sorry, no posts matched your criteria.</p>
<br class="clear-margins" />
</div>
<div class="post-foot"></div>
<?php endif ?>
</div>
<?php include(TEMPLATEPATH . '/sidebar.php') ?>
<?php get_footer() ?>

884
style.css Normal file
View File

@ -0,0 +1,884 @@
/*
Theme Name: ComicPress
Theme URI: http://comicpress.org
Description: Publish a comic with WordPress. Standard Edition. <a href="http://comicpress.org">Visit the ComicPress Website.</a>
Author: Tyler Martin
Author URI: http://mindfaucet.com/
Version: 2.7.1
.
The CSS, XHTML and design is released under GPL v3:
http://www.opensource.org/licenses/gpl-3.0.html
.
*/
/* STANDARD TAGS */
body {
margin: 0;
color: #000;
font-size: 12px;
font-family: 'Arial', sans-serif;
text-shadow: #000 0 0 0; /* Lighten Safari's heavy fonts */
}
a {
color: #800;
text-decoration: none;
}
a:hover {
color: #f00;
}
a:focus {
outline: none;
}
a img {
border: none;
}
p {
margin: 12px 0;
}
img {
max-width: 100%;
padding: 0;
}
small {
font-size: 11px;
}
hr {
height: 1px;
color: #000;
background-color: #000;
border: 0px;
}
blockquote {
margin: 10px;
padding: 5px 10px 5px 20px;
border-width: 1px 1px 1px 5px;
border-style: solid;
border-color: #000;
}
blockquote cite {
margin: 5px 0 0;
display: block;
}
cite {
font-size: 13px;
font-weight: bold;
font-style: normal;
}
code {
padding: 10px;
display: block;
font-family: 'Courier New', monospace;
border: 1px dotted #000;
overflow: scroll;
}
acronym, abbr, span.caps {
cursor: help;
}
acronym, abbr {
border-bottom: 1px dashed #000;
}
form {
margin: 0;
}
/* HEADINGS */
h1, h1 a, h1 a:hover {
padding: 10px 0 0 0;
margin: 0;
color: #000;
font-size: 60px;
font-family: 'Georgia', serif;
font-weight: normal;
line-height: 50px;
text-decoration: none;
letter-spacing: -4px;
font-variant: small-caps;
}
h2, h2 a, h2 a:hover {
margin: 0;
color: #000;
font-weight: bold;
letter-spacing: -1px;
font-size: 24px;
}
h2.pagetitle, h2.pagetitle a {
padding: 0 0 5px 0;
margin: 0 0 20px 0;
font-family: 'Georgia', serif;
font-size: 32px;
font-weight: normal;
letter-spacing: -2px;
}
h3, h3 a, h3 a:hover {
padding: 0;
margin: 0;
font-size: 20px;
font-weight: bold;
text-align: left;
color: #000;
text-decoration: none;
clear: both;
letter-spacing: -1px;
}
/* THE PAGE WRAPPER */
/* Change this width to set the entire site's width - increase/reduce #column width by the same amount */
#page {
width: 760px;
margin: 0px auto;
}
/* THE HEADER */
#header {
text-align: center;
}
.description {
padding: 0 0 10px 0;
font-size: 14px;
font-style: italic;
letter-spacing: 2px;
}
/* THE MENU */
#menubar {
background: #000;
zoom: 1; /* IE fix, allows for variable height menu */
}
#menunav {
float: right;
}
#menunav a {
width: 25px;
height: 25px;
display: block;
float: left;
color: #fff;
font-size: 19px;
font-weight: bold;
line-height: 25px;
text-align: center;
border-left: 1px solid #fff;
}
#menunav a:hover {
background: #800;
}
#menu {
padding: 0;
margin: 0;
list-style: none;
float: left;
line-height: 25px;
font-size: 12px;
text-transform: uppercase;
}
#menu a {
padding: 0px 5px;
display: block;
color: #fff;
text-decoration: none;
border-right: 1px solid #fff;
}
#menu li {
float: left;
}
#menu li:hover a, #menu li.sfhover a {
color: #fff; /* Main menu highlighted text color */
}
#menu li:hover, #menu li.sfhover {
background: #800; /* Main menu highlighted background color */
}
/* For submenu dropdowns - this order must be maintained */
#menu ul {
padding: 0;
margin: 0;
list-style: none;
position: absolute;
left: -9999px;
width: 151px;
line-height: 1;
border-top: 1px solid #fff;
}
#menu li li {
width: 150px;
margin: 0 0 0 -1px;
border-width: 0 1px 1px 1px;
border-color: #fff;
border-style: solid;
}
#menu li li a {
width: 139px;
padding: 4px 5px;
color: #fff;
border: none;
}
#menu li ul ul {
margin: -21px 0 0 151px;
}
#menu li ul li:hover a, #menu li ul li li:hover a, #menu li ul li li li:hover a, #menu li ul li li li:hover a {
color: #fff; /*Submenu highlighted text color */
}
#menu li:hover li a, #menu li li:hover li a, #menu li li li:hover li a, #menu li li li li:hover li a {
color: #fff; /*Submenu text color */
}
#menu li li:hover {
background: #f00; /*Submenu highlighted background color */
}
#menu li:hover ul ul, #menu li:hover ul ul ul, #menu li:hover ul ul ul ul, #menu li.sfhover ul ul, #menu li.sfhover ul ul ul, #menu li.sfhover ul ul ul ul {
left: -9999px;
}
#menu li:hover ul, #menu li li:hover ul, #menu li li li:hover ul, #menu li li li li:hover ul, #menu li.sfhover ul, #menu li li.sfhover ul, #menu li li li.sfhover ul, #menu li li li li.sfhover ul {
left: auto;
background: #222; /*Submenu background color */
text-transform: none;
}
/* THE COMIC */
#comic {
padding: 10px 0;
text-align: center;
}
/* THE FOOTER */
#footer {
padding: 20px 0;
text-align: center;
}
/* NAVIGATION */
.nav {
float: right;
font-size: 12px;
font-weight: bold;
}
.nav-first {
padding: 0 5px 0 0;
float: left;
border-right: 1px solid #000;
}
.nav-previous {
padding: 0 5px;
float: left;
}
.nav-next {
padding: 0 5px;
float: left;
border-right: 1px solid #000;
border-left: 1px solid #000;
}
.nav-last {
padding: 0 0 0 5px;
float: left;
}
.nav-blog {
color: #000;
font-size: 12px;
font-weight: bold;
float: right;
}
.nav-blog-previous {
padding: 0 5px 0 0;
float: left;
}
.nav-blog-next {
padding: 0 0 0 5px;
float: left;
border-left: 1px solid #000;
}
.pagenav {
padding: 40px 20px 0 20px;
color: #000;
font-size: 12px;
font-weight: bold;
clear: both;
}
.pagenav-left {
float: left;
}
.pagenav-right {
float: right;
}
.nav a, .pagenav a, .nav-blog a {
display: block;
float: left;
color: #000;
}
.nav a:hover, .pagenav a:hover, .nav-blog a:hover {
color: #800;
}
/* POSTS - PAGES */
#column {
width: 560px;
padding: 5px 0 20px 0;
float: left;
overflow: hidden;
}
.post, .post-comic, .post-page {
padding: 0 20px;
}
.post-head, .post-page-head, .post-comic-head {
}
.post-foot, .post-comic-foot, .post-page-foot {
margin: 0 0 40px 0;
height: 10px;
overflow: hidden;
}
.comicdate {
font-size: 14px;
}
.postdate {
font-size: 11px;
}
.more-link {
border-top: 1px dashed #000;
font-style: italic;
display: block;
clear: both;
}
.tags {
font-size: 11px;
clear: both;
}
.comment-link {
font-family: 'Georgia', serif;
font-size: 16px;
text-align: right;
}
/* THE BLOG HEADER */
#blogheader {
font-family: 'Georgia', serif;
padding: 25px 0 25px 20px;
font-size: 32px;
letter-spacing: -2px;
border-top: 1px solid #000;
}
/* COMMENTS */
.comment-wrap{
padding: 0 20px;
}
.comment-wrap h3 {
margin: 0;
padding: 20px 0 0 0;
font-weight: normal;
font-size: 20px;
clear: both;
font-family: 'Georgia', serif;
}
.comment {
padding: 10px;
margin: 10px 0 0 0;
clear: both;
border: 1px solid #000;
min-height: 64px;
}
.comment .comment {
border: 1px dotted #000;
}
.comment-author {
display: inline;
}
.comment-meta {
display: inline;
padding: 0 0 0 5px;
margin: 0 0 0 2px;
border-left: 1px solid #000;
}
.says {
display:none;
}
.avatar {
margin: 0 10px 0 0;
float: left;
}
#comment {
width: 100%;
font-size: 12px;
font-family: 'Arial', sans-serif;
}
#author, #email, #url {
width: 200px;
font-size: 12px;
font-family: 'Arial', sans-serif;
}
#submit {
margin: 0 0 20px 0;
float: right;
}
ol.commentlist {
margin: 0;
padding: 0;
font-size: 11px;
list-style: none;
}
ol.commentlist p {
margin: 10px 0 0 74px;
}
ul.children {
margin: 0;
padding: 0;
list-style: none;
}
.reply {
padding: 10px 0 0 0;
text-align: right;
}
/* ARCHIVE */
/* For the built-in WordPress archive pages (by month or category) as well as search result pages */
.comicarchiveframe {
padding: 5px;
border: 1px solid #000;
background: #fff;
opacity: 0.99;
filter: alpha(opacity=99);
}
.comicarchiveframe:hover {
opacity: 0.70;
filter: alpha(opacity=70);
}
.comicarchiveframe h3 {
margin: 0;
}
.comicarchiveframe a small {
display: block;
color: #000;
}
.archive-year {
font-size: 48px;
}
.archive-yearlist {
padding: 0 0 10px 0;
font-size: 14px;
}
/* SIDEBAR */
#sidebar {
width: 200px;
padding: 5px 0;
float: left;
font-size: 11px;
overflow: hidden;
}
#sidebar h2, #sidebar h2 a {
font-size: 16px;
}
#sidebar ul {
margin: 0;
padding: 0;
list-style: none;
}
#sidebar ul li {
margin: 0 0 10px 10px;
padding: 0;
}
#sidebar ul li ul li {
margin: 0 0 0 10px;
padding: 0;
}
/* WIDGETS */
.random-comic-icon {
padding: 0 5px;
color: #fff;
background: #000;
}
.comic-bookmark {
margin: 0 0 10px 5px;
}
.archive-dropdown {
max-width: 100%;
}
/* CALENDAR */
#wp-calendar {
width: 165px;
margin: 0 0 0 5px;
}
#wp-calendar th {
font-size: 10px;
font-weight: normal;
text-align: center;
}
#wp-calendar caption {
font-family: 'Georgia', sans-serif;
font-size: 18px;
letter-spacing: -1px;
font-variant: small-caps;
}
#wp-calendar td {
min-width: 20px;
padding: 0;
text-align: center;
border: 1px solid #000;
}
#wp-calendar a {
display: block;
text-decoration: none;
font-weight: bold;
}
#wp-calendar a:hover {
color: #fff;
background: #000;
}
/* SEARCH */
#s {
width: 140px;
margin: 0;
padding: 2px;
font-size: 12px;
font-family: 'Arial', sans-serif;
}
#searchsubmit {
padding: 0 5px;
font-size: 12px;
font-family: 'Arial', sans-serif;
}
/* GALLERY */
.gallery-image {
width: 518px;
border: 1px solid #000;
overflow: hidden;
background: #000;
}
.gallery-caption {
font-size: 11px;
}
.gallery-caption p {
width: 510px;
padding: 5px;
margin: 0;
text-align: center;
color: #fff;
background: #000;
}
.imagenav-wrap {
margin: 5px 0 0 0;
}
.imagenav {
width: 77px;
height: 77px;
float: left;
overflow: hidden;
}
.imagenav-center {
width: 344px;
height: 65px;
margin: 0 5px;
padding: 10px 5px 0 5px;
float: left;
color: #000;
text-align: center;
border: 1px solid #000;
overflow: hidden;
}
.imagetitle {
color: #000;
font-size: 18px;
}
.imagenav-bg {
width: 75px;
height: 75px;
position: absolute;
z-index: 0;
background: #ddd;
border: 1px solid #000;
overflow: hidden;
}
.imagenav-bg img {
width: 75px;
height: 75px;
}
.imagenav-arrow {
width: 75px;
height: 75px;
position: absolute;
z-index: 1;
color: #fff;
font-size: 80px;
font-weight: bold;
line-height:75px;
text-align: center;
border: 1px solid #000;
float: left;
}
.imagenav-link {
width: 75px;
height: 75px;
position: absolute;
z-index: 2;
border: 1px solid #000;
float: left;
overflow: hidden;
}
.imagenav-link img {
width: 75px;
height: 75px;
opacity: 0.50;
filter: alpha(opacity=50);
}
.imagenav-link img:hover {
opacity: 0.00;
filter: alpha(opacity=0);
}
/* POSTED IMAGES */
.wp-caption p {
margin: 5px 0;
line-height: 11px;
font-size: 11px;
}
.aligncenter {
margin: 0 auto;
display: block;
}
.alignright {
margin: 10px 0 10px 10px;
display: inline;
float: right;
}
.alignleft {
margin: 10px 10px 10px 0;
display: inline;
float: left
}
/* TRANSCRIPT */
#transcript {
padding: 0 10px;
font-size: 11px;
border-left: 4px dotted #000;
border-right: 4px dotted #000;
}
.transcript-border {
padding: 0 5px;
margin: 15px 0;
border: 1px solid #000;
background: #fff;
clear: both;
}
a.transcript-title {
padding: 0 0 5px 0;
margin: 0 0 5px 0;
display: block;
font-family: 'Georgia', serif;
font-style: italic;
font-size: 16px;
letter-spacing: -1px;
border-bottom: 1px dashed #000;
}
#transcript-content {
font-family: 'Courier New', monospace;
overflow: hidden;
}
#s-transcript {
width: 140px;
margin: 0;
padding: 2px;
font-size: 12px;
font-family: 'Georgia', serif;
font-style: italic;
}
#searchsubmit-transcript {
padding: 0 5px;
font-size: 12px;
font-family: 'Arial', sans-serif;
}
/* STORYLINES */
.storyline-cats {
padding: 0;
margin: 0;
list-style: none;
}
.storyline-cats li {
display: inline;
}
li.storyline-root {
display: none;
}
/* CLEAR FLOATS */
.clear {
clear: both;
}
/* CLEAR MARGINS */
/* Used with BR for clearing paragraph margins for Safari, Chrome - avoid background gaps */
.clear-margins {
clear: both;
height: 0;
line-height: 0;
font-size: 0;
}