diff --git a/addons/Core/Core.inc b/addons/Core/Core.inc
index 24ae6b1..85a4df0 100644
--- a/addons/Core/Core.inc
+++ b/addons/Core/Core.inc
@@ -334,6 +334,7 @@ class ComicPressAddonCore extends ComicPressAddon {
$this->comicpress->comicpress_options[$option] = (int)$_POST['cp'][$option];
break;
case 'comic_space':
+ case 'category_page_usage':
$this->comicpress->comicpress_options[$option] = $_POST['cp'][$option];
break;
}
diff --git a/addons/Core/partials/options-admin.inc b/addons/Core/partials/options-admin.inc
index 5dbc07c..8f17f29 100644
--- a/addons/Core/partials/options-admin.inc
+++ b/addons/Core/partials/options-admin.inc
@@ -74,6 +74,17 @@
+
+
Use comic category pages as:
+
+ __("The normal way, as a list of posts in that category", 'comicpress'),
+ "comic_frontpage" => __("As the front page to the comics in that category", 'comicpress')
+ ) as $value => $label) { ?>
+
+
+
+
" />
diff --git a/archive.php b/archive.php
index f90f69d..f58e23a 100644
--- a/archive.php
+++ b/archive.php
@@ -7,7 +7,7 @@
// why can't wordpress allow for post date asc sorting out of the box...
query_posts($query_string . '&order=asc');
- while (have_posts()) {
+ while (have_posts()) {
the_post();
if (in_comic_category()) {
diff --git a/classes/ComicPress.inc b/classes/ComicPress.inc
index 8c8e7c4..235f5fc 100644
--- a/classes/ComicPress.inc
+++ b/classes/ComicPress.inc
@@ -12,7 +12,8 @@ class ComicPress {
'mini_dimensions' => '100x',
'category_order' => false,
'blogpost_count' => 10,
- 'comic_space' => 'comic_only'
+ 'comic_space' => 'comic_only',
+ 'category_page_usage' => 'archive_list'
);
var $additional_stylesheets = array();
@@ -20,7 +21,9 @@ class ComicPress {
var $comic_post_attachments_cache = array();
var $category_tree = array();
-
+
+ var $partial_paths = array();
+
/**
* Load ComicPress options.
*/
diff --git a/functions.php b/functions.php
index 9589729..8bc51ab 100644
--- a/functions.php
+++ b/functions.php
@@ -4,7 +4,7 @@
add_action('init', '__comicpress_init');
function __comicpress_init() {
- global $comicpress;
+ global $comicpress, $wp_query;
if (current_user_can('edit_files')) {
wp_cache_flush();
@@ -50,14 +50,43 @@ function __comicpress_init() {
}
}
+function comicpress_get_header() {
+ global $post, $comicpress;
+
+ if (!empty($post)) {
+ if (in_comic_category()) {
+ $category_ids = wp_get_post_categories($post->ID);
+ if (is_array($category_ids)) {
+ foreach ($category_ids as $id) {
+ $category = get_category($id);
+ if (!empty($category)) {
+ if (is_dir($target = get_template_directory() . '/subthemes/' . $category->slug)) {
+ $comicpress->partial_paths[] = $target;
+ }
+ }
+ }
+ }
+ }
+ }
+
+ $comicpress->partial_paths[] = get_template_directory() . '/partials';
+
+ get_header();
+}
+
function include_partial($partials = '') {
+ global $comicpress;
if (!is_array($partials)) {
$partials = func_get_args();
}
foreach ($partials as $partial) {
- if (($result = include(get_template_directory() . '/partials/' . $partial . '.inc')) === true) {
- return;
+ foreach ($comicpress->partial_paths as $path) {
+ $target = $path . '/' . $partial . '.inc';
+ if (file_exists($target)) {
+ include($target);
+ return;
+ }
}
}
}
diff --git a/single.php b/single.php
index 5005946..de61a94 100644
--- a/single.php
+++ b/single.php
@@ -1,11 +1,11 @@
comicpress_options['comic_space'] == "comic_only")) {
+ if ($comicpress->comicpress_options['comic_space'] == "comic_only") {
include(get_template_directory() . '/partials/single-comic-post.inc');
}
} else {
diff --git a/subthemes/guild-of-thieves/single-blog-header.inc b/subthemes/guild-of-thieves/single-blog-header.inc
new file mode 100644
index 0000000..29bc160
--- /dev/null
+++ b/subthemes/guild-of-thieves/single-blog-header.inc
@@ -0,0 +1 @@
+this is my override blog header!
\ No newline at end of file
diff --git a/subthemes/guild-of-thieves/single-display-comic.inc b/subthemes/guild-of-thieves/single-display-comic.inc
new file mode 100644
index 0000000..29bc160
--- /dev/null
+++ b/subthemes/guild-of-thieves/single-display-comic.inc
@@ -0,0 +1 @@
+this is my override blog header!
\ No newline at end of file