WordPress Theme: iNove Modifikation [Update vom 15.09.2009]

Für mein Blog nenutze ich das iNove Theme von mg12.

Für dieses Theme habe ich eine kleine Erweiterung geschrieben. Meine Modifikation macht das folgende:

  • Der Name einer statischen Startseite wird in der Menübar nicht mehr aufgeführt
  • Zwei Templates frontpage.php und frontpage-without-sidebar.php angelegt
  • Im Kopfbereich können über der Menüleiste eigene Banner dargestellt werden
  • Aufrufe für WP-PostViews in die Templates eingetragen

Die eigenen Banner müssen eine Breite von 936 Pixeln haben. Die Höhe der Banner kann bei den Aktuellen Themen Optionen eingestellt werden. Die Banner müssen in das Verzeichnis /wp-content/header/ per FTP hochgeladen werden. Alle Banner mit der korrekten Größe werden darhestellt. Hierbei können die Banner mit Hilfe eines Javascripts nach einer frei wählbaren Zeit ausgewechselt werden. Wenn diese Zeit auf 0 gesetzt wird wird ein Zufälliges Banner ausgewählt. Dieses wird bei jedem neuen Seitenaufruf gewechselt.

Mit dem Patch werden 6 Dateien verändert und zwei neu angelegt.

  • inove/archive.php
    diff -urN inove-1.4.6/archive.php inove/archive.php<br />
    --- inove-1.4.6/archive.php	2009-08-07 15:59:46.000000000 +0200<br />
    +++ inove/archive.php	2009-09-15 15:19:42.000000000 +0200<br />
    @@ -57,6 +57,7 @@</p>
    </p>
    <div class="under">
     			<?php if ($options['categories']) : ?><span class="categories"><?php _e('Categories: ', 'inove'); ?></span><span><?php the_category(', '); ?></span><?php endif; ?><br />
     			<?php if ($options['tags']) : ?><span class="tags"><?php _e('Tags: ', 'inove'); ?></span><span><?php the_tags('', ', ', ''); ?></span><?php endif; ?><br />
    +			<?php if (function_exists('the_views')) : the_views(true, '<span>', ''); endif; ?><br />
     		</span></div>
    </p>
    <p> <?php endwhile; else : ?><br />
    
  • inove/footer.php
    diff -urN inove-1.4.6/footer.php inove/footer.php<br />
    --- inove-1.4.6/footer.php	2009-08-07 15:59:46.000000000 +0200<br />
    +++ inove/footer.php	2009-09-15 15:19:42.000000000 +0200<br />
    @@ -37,7 +37,9 @@</p>
    </p>
    <div id="themeinfo">
     		<?php printf(__('Theme by <a href="%1$s">NeoEase. Valid <a href="%2$s">XHTML 1.1</a> and <a href="%3$s">CSS 3</a>.', 'inove'), 'http://www.neoease.com/', 'http://validator.w3.org/check?uri=referer', 'http://jigsaw.w3.org/css-validator/check/referer?profile=css3'); ?><br />
    +		<?php printf(__('<br />
    Supplements by <a href="%1$s">Peter Hilbring.', 'inove'), '//www.hilbring.de/'); ?></div>
    </p>
    <p>+</p>
    </p>
    <p> <!-- footer END --><br />
    
  • inove/functions.php
    diff -urN inove-1.4.6/functions.php inove/functions.php<br />
    --- inove-1.4.6/functions.php	2009-08-07 15:59:46.000000000 +0200<br />
    +++ inove/functions.php	2009-09-15 15:19:41.000000000 +0200<br />
    @@ -35,6 +35,9 @@<br />
     			$options['twitter_username'] = '';<br />
     			$options['analytics'] = false;<br />
     			$options['analytics_content'] = '';<br />
    +			$options['img_dir'] = '/wp-content/header/';<br />
    +			$options['img_height'] = 90;<br />
    +			$options['img_interval'] = 30;<br />
     			update_option('inove_options', $options);<br />
     		}<br />
     		return $options;<br />
    @@ -171,6 +174,11 @@<br />
     			}<br />
     			$options['analytics_content'] = stripslashes($_POST['analytics_content']);</p>
    </p>
    <p>+			// head image<br />
    +			$options['img_dir'] = stripslashes($_POST['img_dir']);<br />
    +			$options['img_height'] = (int)$_POST['img_height'];<br />
    +			$options['img_interval'] = (int)$_POST['img_interval'];<br />
    +<br />
     			update_option('inove_options', $options);</p>
    </p>
    <p> 		} else {<br />
    @@ -442,6 +450,35 @@</p>
    </p>
    <p>+</p>
    </p>
    <table class="form-table" border="0">
    +</p>
    </p>
    <tbody>
    +</p>
    </p>
    <tr valign="top">
    +</p>
    </p>
    <th scope="row"><?php _e('Header Image', 'inove'); ?></th>
    </p>
    <p>+</p>
    </p>
    <td>
    +						<label><br />
    +							<?php _e('All header images are located in ', 'inove'); ?><br />
    +						</label><br />
    +</p>
    </p>
    <input id="img_dir" class="code" name="img_dir" size="64" type="text" value="<?php echo($options['img_dir']); ?/>" /><br />
    +<br />
    +						<?php _e('The image(s) must be 936px width and <code>Height px height.', 'inove'); ?><br />
    +<br />
    +						<label><br />
    +							<?php _e('Height', 'inove'); ?><br />
    +						</label><br />
    +</p>
    </p>
    <input id="img_height" class="code" name="img_height" size="3" type="text" value="<?php echo($options['img_height']); ?/>" />px<br />
    +<br />
    +						<label><br />
    +							<?php _e('Rotate header images with Javascript every ', 'inove'); ?><br />
    +						</label><br />
    +</p>
    </p>
    <input id="img_interval" class="code" name="img_interval" size="3" type="text" value="<?php echo($options['img_interval']); ?/>" /><br />
    +						<?php _e(' seconds', 'inove'); ?><br />
    +<br />
    +						<?php _e('Select amount of seconds between rotation. Set to 0 to not use Javascript for rotation. In this case the images will still be rotated on each page load, but without JS.', 'inove'); ?><br />
    +					</td>
    </p>
    <p>+				</tr>
    </p>
    <p>+			</tbody>
    </p>
    <p>+		</table>
    </p>
    <p>+</p>
    </p>
    <input class="button-primary" name="inove_save" type="submit" value="<?php _e('Save Changes', 'inove'); ?/>" /><br />
    
  • inove/index.php
    diff -urN inove-1.4.6/index.php inove/index.php<br />
    --- inove-1.4.6/index.php	2009-08-07 15:59:46.000000000 +0200<br />
    +++ inove/index.php	2009-09-15 15:19:42.000000000 +0200<br />
    @@ -32,6 +32,7 @@</p>
    </p>
    <div class="under">
     			<?php if ($options['categories']) : ?><span class="categories"><?php _e('Categories: ', 'inove'); ?></span><span><?php the_category(', '); ?></span><?php endif; ?><br />
     			<?php if ($options['tags']) : ?><span class="tags"><?php _e('Tags: ', 'inove'); ?></span><span><?php the_tags('', ', ', ''); ?></span><?php endif; ?><br />
    +			<?php if (function_exists('the_views')) : the_views(true, '<span>', ''); endif; ?>
     		</div>
    </p>
    <p> <?php endwhile; else : ?><br />
    
  • inove/single.php
    diff -urN inove-1.4.6/single.php inove/single.php<br />
    --- inove-1.4.6/single.php	2009-08-07 15:59:46.000000000 +0200<br />
    +++ inove/single.php	2009-09-15 15:19:42.000000000 +0200<br />
    @@ -28,6 +28,7 @@</p>
    </p>
    <div class="under">
     			<?php if ($options['categories']) : ?><span class="categories"><?php _e('Categories: ', 'inove'); ?></span><span><?php the_category(', '); ?></span><?php endif; ?><br />
     			<?php if ($options['tags']) : ?><span class="tags"><?php _e('Tags: ', 'inove'); ?></span><span><?php the_tags('', ', ', ''); ?></span><?php endif; ?><br />
    +			<?php if (function_exists('the_views')) : the_views(true, '<span>', ''); endif; ?>
     		</div>
    </p>
    <p>
  • inove/templates/header.php
    diff -urN inove-1.4.6/templates/header.php inove/templates/header.php<br />
    --- inove-1.4.6/templates/header.php	2009-08-07 15:59:46.000000000 +0200<br />
    +++ inove/templates/header.php	2009-09-15 15:19:41.000000000 +0200<br />
    @@ -1,5 +1,68 @@<br />
     <!-- header START --><br />
    -</p>
    </p>
    <div id="header">
    +<?php<br />
    +	function inove_get_img_array() {<br />
    +		$options = iNoveOptions::getOptions();<br />
    +		$files = array();<br />
    +		$imgdir = $options['img_dir'];<br />
    +		$imgpath = $_SERVER['DOCUMENT_ROOT'] . $imgdir;<br />
    +		$dh  = opendir($imgpath);<br />
    +		while (false !== ($filename = readdir($dh))) {<br />
    +			if(eregi('.jpg', $filename) || eregi('.gif', $filename) || eregi('.png', $filename)) {<br />
    +				list($img_width, $img_height) = getimagesize($imgpath . $filename);<br />
    +				if(($img_width == 936) &amp;&amp; ($img_height == $options['img_height'])) {<br />
    +					array_push($files, ''' . get_bloginfo('siteurl') . $imgdir . $filename . ''');<br />
    +				}<br />
    +		}<br />
    +		}<br />
    +		closedir($dh);<br />
    +<br />
    +		return $files;<br />
    +	}<br />
    +<br />
    +	$files = inove_get_img_array();<br />
    +<br />
    +	/* Generate a random number */<br />
    +	$amount_images = count($files);<br />
    +	$number_images = ($amount_images-1);<br />
    +	$randnum = rand(0,$number_images);<br />
    +<br />
    +	$selected_header_image = $files[$randnum];<br />
    +?><br />
    +	<?php if ($selected_header_image == '') : ?><br />
    +</p>
    </p>
    <div id="header">
    +	<?php else : ?><br />
    +		<?php if ($options['img_interval'] != 0) : ?><br />
    +			<script type="text/javascript"><!--mce:0--></script><br />
    +		<?php<br />
    +			$selected_header_image = $HeaderImages[0];<br />
    +			endif;<br />
    +		?><br />
    +</p>
    </p>
    <div id="imagecontainer" style="border-bottom: 1px solid #a6a6a6; margin: 0pt; padding: 0pt; position: relative;">
    +		<?php if ($inove_nosidebar != true) : ?><br />
    +</p>
    </p>
    <div style="position: absolute; z-index: 2; top: 0pt; right: 0pt; background-color: #656a6d; width: 300px; opacity: 0.4;"> </div>
    </p>
    <p>+		<?php endif; ?><br />
    +	<?php endif; ?></p>
    </p>
    <p> 	<!-- banner START --><br />
     	<?php if( $options['banner_content'] &amp;&amp; (<br />
    @@ -31,7 +94,7 @@<br />
     			if($options['menu_type'] == 'categories') {<br />
     				wp_list_categories('title_li=0&amp;orderby=name&amp;show_count=0');<br />
     			} else {<br />
    -				wp_list_pages('title_li=0&amp;sort_column=menu_order');<br />
    +				wp_list_pages('title_li=0&amp;sort_column=menu_order&amp;exclude=256');<br />
     			}<br />
     		?></p>
    </p>
    <li><a class="lastmenu" href="javascript:void(0);"></a></li>
    </div>
    </div>
    </div>
    <p>
  • inove/frontpage.php
    diff -urN inove-1.4.6/frontpage.php inove/frontpage.php<br />
    --- inove-1.4.6/frontpage.php	1970-01-01 01:00:00.000000000 +0100<br />
    +++ inove/frontpage.php	2009-09-15 15:30:33.000000000 +0200<br />
    @@ -0,0 +1,23 @@<br />
    +<?php<br />
    +/*<br />
    +Template Name: Frontpage<br />
    +*/<br />
    +?><br />
    +<?php get_header(); ?><br />
    +<br />
    +<?php if (have_posts()) : the_post(); update_post_caches($posts); ?><br />
    +<br />
    +</p>
    </p>
    <div id="post-<?php the_ID(); ?>" class="post"><br />
    +</p>
    </p>
    <div class="content">
    +			<?php the_content(); ?><br />
    +</p>
    </p>
    <p>+		</p>
    </div>
    <p>+	</p>
    </div>
    <p>+<br />
    +<?php else : ?><br />
    +</p>
    </p>
    <div class="errorbox">
    +		<?php _e('Sorry, no posts matched your criteria.', 'inove'); ?><br />
    +	</div>
    </p>
    <p>+<?php endif; ?><br />
    +<br />
    +<?php get_footer(); ?><br />
    
  • inove/frontpage-without-sidebar.php
    diff -urN inove-1.4.6/frontpage-without-sidebar.php inove/frontpage-without-sidebar.php<br />
    --- inove-1.4.6/frontpage-without-sidebar.php	1970-01-01 01:00:00.000000000 +0100<br />
    +++ inove/frontpage-without-sidebar.php	2009-09-15 15:25:05.000000000 +0200<br />
    @@ -0,0 +1,11 @@<br />
    +<?php<br />
    +/*<br />
    +Template Name: Frontpage without sidebar<br />
    +*/<br />
    +?><br />
    +<br />
    +<?php<br />
    +	global $inove_nosidebar;<br />
    +	$inove_nosidebar = true;<br />
    +	include('frontpage.php');<br />
    +?><br />
    


Die modifizierte Version kann in zwei Versionen herunter geladen werden

  • als Patchdatei gegen die Version iNove 1.4.6
  • als komplettes ZIP Paket

Die aktuellen iNove Versionen können auf der WordPress Themenseite herunter geladen werden.

Nützliche Hinweise und Tipps zur Modifikation von iNove habe ich in dem Free WordPress Tutorials Blog gefunden.

Bei Erscheinen einer neuen iNove Version werde ich meine Version anpassen.

Weitere Vorschläge werde ich, nach Möglichkeit, in meine Modifikation übernehmen.

Downloads

inove-1.4.6-modified.zip
Titel: inove-1.4.6-modified.zip (1142 clicks)
Beschriftung:
Filename: inove-1-4-6-modified.zip
Size: 527 KB
inove-1.4.6.patch
Titel: inove-1.4.6.patch (1138 clicks)
Beschriftung:
Filename: inove-1-4-6.patch
Size: 9 KB

[ratings]

2 Kommentare


  1. Hi, I do apreciate sharing your ideas and tools. I did download your modified inove theme install it and I am seeing my Home at ajaewo.co.cc can you please post what did you adapt in header? Thanks. I appreciate it.

    Antworten

    1. Hi,

      at the bottom of the iNove theme options menu you must select a folder to store the header images. Into that folder you must store the images. All images must be exact 936 px width and height px heiht. The file extension must be .png, .gif or .jpg.

      Then the images will be displayed.

      Peter

      Antworten

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.