やや高度なNoobアラート:{すみません}。
私はWordPressサイト{No Active Yet}を設計しています。私はプラグイン[feelbox]を持っていますが、現在それは単一の投稿ページにのみ表示されます。フロントページに表示するためのオプションはありません[index.php]。これがメインのプラグインファイルです - feelbox.phpはここに投稿するには長すぎます。これが最初の部分です。
> if (!$options) {
feelbox_add_default_options();
} else {
if ($options['showinpostsondefault'] == 'on') {
add_filter('the_content', 'add_feelbox_widget_to_posts');
}
if (empty($options['showtweetfollowup'])) {
$temp = array(
'showtweetfollowup' => 'on'
);
update_option('feelbox_wp_options', $temp);
}
}
}
function feelbox_add_default_options() {
$temp = array(
'showsparkbar' => 'on',
'showinpostsondefault' => 'on',
'showtweetfollowup' => 'on',
'validkey' => '0',
'sortmoods' => 'off'
);
update_option('feelbox_wp_options', $temp);
}
function feelbox_website_and_apikey_match() {
$options = get_option('feelbox_wp_options');
return $options['validkey'] == '1';
}
function feelbox_get_widget_html() {
global $wpdb;
global $post;
global $moods;
if ( ( $use_centralized_site == FALSE ) || ($use_centralized_site == TRUE && feelbox_website_and_apikey_match()) ) {
$post_id = (int)$post->ID;
$obj = $wpdb->get_row("SELECT * FROM {$wpdb->prefix}lydl_posts WHERE ID=" . $post_id, ARRAY_A);
$sum = $obj["emotion_1"]+$obj["emotion_2"]+$obj["emotion_3"]+$obj["emotion_4"]+$obj["emotion_5"]+$obj["emotion_6"];
しかし、これが私のindex.phpです。
<?php $mts_options = get_option('dualshock'); ?>
<?php get_header(); ?>
<div id="page">
<div class="content">
<article class="article">
<div id="content_box">
<?php $j = 0; if (have_posts()) : while (have_posts()) : the_post(); ?>
<div class="post excerpt <?php echo (++$j % 2 == 0) ? 'last' : ''; ?>">
<header>
<h2 class="title">
<a href="<?php the_permalink() ?>" title="<?php the_title(); ?>" rel="bookmark"><?php the_title(); ?></a>
</h2>
</header><!--.header-->
<a href="<?php the_permalink() ?>" title="<?php the_title(); ?>" rel="nofollow" id="featured-thumbnail">
<?php if ( has_post_thumbnail() ) { ?>
<?php echo '<div class="featured-thumbnail">'; the_post_thumbnail('featured',array('title' => '')); echo '</div>'; ?>
<?php } else { ?>
<div class="featured-thumbnail">
<img width="450" height="200" src="<?php echo get_template_directory_uri(); ?>/images/nothumb.png" class="attachment-featured wp-post-image" alt="<?php the_title(); ?>">
</div>
<?php } ?>
</a>
<div class="post-content image-caption-format-1">
<?php echo excerpt(38);?>
</div>
</div><!--.post excerpt-->
<div class="post-info">
<span class="thecomment"><?php echo comments_number(__('No Comment','mythemeshop'), __('One Comment','mythemeshop'), '<span class="comments">'.__('Comments','mythemeshop').'</span> <span class="comm">%</span>');?></span>
<span class="readMore"><a href="<?php the_permalink() ?>" title="<?php the_title(); ?>" rel="bookmark"><?php _e('Read More','mythemeshop'); ?></a></span>
</div>
<?php endwhile; endif; ?>
<span><?php if ( function_exists('print_feelbox_widget') ) { print_feelbox_widget(); } ?></span>
<!--Start Pagination-->
<?php if ( isset($mts_options['mts_pagenavigation']) == '1' ) { ?>
<?php $additional_loop = 0; pagination($additional_loop['max_num_pages']); ?>
<?php } else { ?>
<div class="pagination">
<ul>
<li class="nav-previous"><?php next_posts_link( __( '← '.'Older posts', 'mythemeshop' ) ); ?></li>
<li class="nav-next"><?php previous_posts_link( __( 'Newer posts'.' →', 'mythemeshop' ) ); ?></li>
</ul>
</div>
<?php } ?>
<!--End Pagination-->
</div>
</article>
<?php get_sidebar(); ?>
<?php get_footer(); ?>
私はpost-info DIVの下にこれを挿入して関数を呼び出そうとしました。
<?php if ( function_exists('print_feelbox_widget') ) { print_feelbox_widget(); } ?>
任意の助けは大歓迎です。ありがとう。
あなたのプラグインはthe_content
をフィルタリングすることによって自身のfeelboxウィジェットを挿入します:
if ($options['showinpostsondefault'] == 'on') {
add_filter('the_content', 'add_feelbox_widget_to_posts');
}
しかし、あなたのインデックスページはthe_contentを表示せず、Title、注目のサムネイル、抜粋、そしてコメント数だけを表示します。
あなたが私たちに示したプラグインコードはprint_feelbox_widget()
関数を含みません。そのような機能は実際にあなたのプラグインに存在しますか? (また、post-info divの終了タグの後、そして "the loop"の終了の外側(<?php endwhile; endif; ?>
)の外側に含めたので、 "the loop"で使用することを意図している場合はカップルライン。)
それ以外の場合は、プラグインをハックして追加のテンプレートタグ(the_excerpt
?)をフィルタリングしてから、そのタグをindex.php
テンプレートに追加することができます。
だから、あなたのプラグインで:
if ($options['showinpostsondefault'] == 'on') {
add_filter('the_content', 'add_feelbox_widget_to_posts');
add_filter('the_excerpt', 'add_feelbox_widget_to_posts');
}
それから、index.php
では以下のようになります。
<div class="post-content image-caption-format-1">
<?php the_excerpt();?>
</div>
もちろん、正確な配置で試してみる必要があります。
がんばろう。