フォーラムへの返信

13件の返信を表示中 - 166 - 178件目 (全178件中)
  • フォーラム: その他
    返信が含まれるトピック: 投稿画面(記事作成中)に

    ブラウザの互換表示(IE7)機能を使えば、その問題に関しては回避できます。
    ただ、別のレイアウト崩れが(プラグイン設定画面やページングなど)起こるので、現時点のIEはWPの管理に向いていないかもしれませんね。

    興味があったので、kzさんのコードを記載したページを作成して試してみました。
    meta_key ごとにページを作成すれば見た目や表示内容も変えられますし、value値だけの取得でいいので、URLも簡素になりますね。

    スラッグを「season」としたページと page-season.php というテンプレートを作成
    URL:http://example.com/season?value=冬

    <?php
     query_posts('posts_per_page=-1&paged=$paged&meta_key=season&meta_value=' . $_GET['value']);
     if(have_posts()) :
    ?>
    <h2><?php echo $_GET['value']; ?></h2>
    
    <?php while(have_posts()) : the_post(); ?>
    <h3><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h3>
    <p>表示の中身</p>
    
    <?php endwhile; endif; wp_reset_query(); ?>
    フォーラム: テーマ
    返信が含まれるトピック: EmptyCanvasのウィジェット
    <div class="sidepanel">
    	<h3></h3>
    	<ul>
    		<li></li>
    	</ul>
    </div>

    デフォルトでは、上のように表示(ウィジェットごと)されるので、.sidepanel に border や padding のスタイルを設定すればそれらしくなると思います。

    デフォルトでは、

    .sidepanel{
    margin-bottom:30px;
    }

    とだけ記載があったはずです。

    公開前に「下書きとして保存」を押した後にパーマリンクを入力し直すか、画面右上の「表示オプション」で、投稿スラッグ にチェックを入れれば、スラッグ(パーマリンク)を入力するテキストフィールドが表示されます。

    タイトルの近くに(最右上)移動させておくと良いかもしれませんね。

    フォーラム: プラグイン
    返信が含まれるトピック: Contact Form 7について

    私の場合は、ログインしたユーザーネームを「value=”ユーザーネーム”」出力したかったので、lukeitohさんのような方法をとっています。

    コンタクトフォーム用のページテンプレートを作成し、「通常ショートコードを入力することによって書き出されるコードをそのままテンプレートに書き写す」という方法で使っています。

    <span></span>の位置にエラーコードが出力されるようになっているようなので、その部分を消してしまうと表示に不具合が出るかもしれませんね。

    そこをクリックするとvaluの文字が消えて

    テンプレートに「付け足す」形にすれば大丈夫だと思いますが、これらが必須項目に設定しているのであれば注意が必要だと思います。

    ただ、takayukisterさんがおっしゃっているように、正式な使い方ではないので、アップデートなどで(コードの変更)、不具合に見舞われる可能性があるかもしれない、というのを注意しておかなけらばならないと思っています。

    トピック投稿者 LVP8

    (@lvp8)

    jim912さん、何度も助けていただいてありがとうございます。
    東京方面にお辞儀をして、F1が盛り上がるよう祈りました。

    トピック投稿者 LVP8

    (@lvp8)

    jim912さん のおかげで思い通りの表示になったのですが、日付の表示で行き詰ってしまいました。

    <?php $related_news
    ~~中略~~
    
    <span><?php the_time('Y/m/d'); ?></span> <a href="<?php echo get_permalink( $r_news->ID ); ?>"><?php echo esc_html( $r_news->post_title ); ?></a>
    
    ~~中略~~
    <?php endif; ?>

    とした場合、関連ニュースを投稿した日付ではなく、表示されている人物紹介ページを投稿した日付になってしまいます。

    jim912さんにいただいたコードを参考に、

    <span><?php echo($r_news->post_date); ?></span>

    とすれば関連ニュースの日付を取得できましたが、データベースに格納されているまま表示されます。
    2009-07-31 15:30:18

    不具合の可能性があったり、コードが複雑になるようであれば無理に表示するつもりはありませんが、これを Y/m/d 形式にする方法はありますでしょうか。

    トピック投稿者 LVP8

    (@lvp8)

    jim912さん
    思い通りの表示ができました。ありがとうございます。

    jim912さんのおっしゃってることは何となく分かっても、その原因や過程、解決方法を理解するスキルを持ち合わせていません。
    実は、リンク先のトピックも、最初の回答をいただいた後発見し、色々と試行錯誤していたのですが、結局思い通りにならずに追加返信を行ったしだいです…。

    いずれにしましても、貴重なお時間を割いてお答えいただいた事と、「もう少し踏み込んで知識を深めよう」という気持ちにさせていただいた事に感謝いたします。

    ありがとうございました。

    トピック投稿者 LVP8

    (@lvp8)

    jim912さん

    先日お世話になったばかりですが、今回も適切なアドバイスありがとうございます。

    あえて面倒なことはおっしゃらなかったと思うのですが、やはり「query_posts」ですと不具合がでたので get_post を試したのですが、プラグインの影響なのか表示されませんでした。

    <?php if (have_posts()) : the_post(); ?>
    
    <h1><?php the_title(); ?></h1>
    
    <dl>
    <dt>カスタムA</dt>
    <dd><?php echo get_post_meta($post->ID,'カスタムフィールドA',true); ?></dd>
    <dt>カスタムB</dt>
    <dd><?php echo get_post_meta($post->ID,'カスタムフィールドB',true); ?></dd>
    </dl>
    
    <!-- 本当はここに関連ニュースを表示させたい -->
    
    <?php the_content(); ?>
    
    <?php comments_template(); ?>
    
    <?php endif; ?>
    
    <h2><?php the_title(); ?> の関連ニュース</h2>
    <ul>
    <?php query_posts( array( 'taxonomy' => 'people', 'term' => $post->name, 'showposts' => 10 ) ); ?>
    <?php if (have_posts()) : while (have_posts()) : the_post(); ?>
    <li><a href="<?php the_permalink() ?>"><?php the_title(); ?></a></li>
    <?php endwhile; else: ?>
    <li>関連ニュースはありませんでした。</li>
    <?php endif; ?>
    </ul>

    上記のように、ループの外側に記載すれば正常に表示されるのですが、本位の場所ではありません。
    本来表示させたい位置に挿入すると、その下の「the_content」や「コメント」に不具合がでます。

    get_post で表示されない理由、query_posts の場合の不具合解消、はありますでしょうか。
    解決方法がなければレイアウトを見直したり( the_content などの配置変え)や、CSS(position)で強引にその場所に表示させることを考えたいと思います。

    トピック投稿者 LVP8

    (@lvp8)

    jim912さん

    早速のサンプルコードありがとうございます。
    思い通りの表示ができたのはもちろんですが、胸のつかえがおりたような感じです。

    jim912さんのおっしゃるように、メンテナンスの事を考え「B案」のコードを使わせていただこうと思いますが、修正していただいた部分を入れ替えても動作しなかったので、最終的には下記のようにして動作確認できました。

    <?php
    $inc_tpls = array(
    	'pattern-a' => array( 1, 10, 12 ),
    	'pattern-b' => array( 2 ),
    	'pattern-c' => array( 7 ),
    );
    
    $current_cat_id = absint( get_query_var('cat') );
    
    $inc_template = '';
    foreach ( $inc_tpls as $tpl_name => $cats ) {
    	if ( in_array( $current_cat_id, $cats ) ) {
    		$inc_template = locate_template( array( 'include/category_inc-' . $tpl_name . '.php' ) );
    		break;
    	}
    }
    
    if ( $inc_template ) :
    	include( $inc_template );
    else :
    ?>
    デフォルトのカテゴリー表示
    <?php endif; ?>

    PHPは全くの素人ですので、誤った修正や記載方法があるかもしれません。ご指摘がなかった場合「解決済み」にしたいと思います。

    jim912さん
    お忙しい中色々アドバイスをいただき、本当にありがとうございました。

    トピック投稿者 LVP8

    (@lvp8)

    jim912さん

    適切かつ詳細な解説ありがとうございます。
    また、想定される問題にも先回りしてアイデアを提示してくださり感謝しております。

    jim912さんが書いてくださったコードですと、テーマファイルの散らかり具合も防げるので、今後はこのスタイルで進めていきたいと思います。

    ただ、下記の意味するところは理解できても、それを実現する知識を私は持ち合わせていません…。

    includeさせるファイルをいくつかのカテゴリーで共有させたいのであれば、マッピングさせる配列を定義しておくと良いかと思います。

    お時間ができた時で結構ですので、コードのサンプルをご教授いただければ幸いです。

    私はプラグイン「Top Level Categories」で対応しています。

    ただし、このプラグイン単体での使用だと不具合(バグ)がありますので、「Top Level Categories Fix」というプラグインを同時に利用します。
    これで不具合を回避できます。

    本家プラグインのサイト観覧前に、Top Level Categories Fix(日本語)をどうぞ。

    フォーラム: 使い方全般
    返信が含まれるトピック: 新規投稿したら404エラーに…
    トピック投稿者 LVP8

    (@lvp8)

    shokun0803さん

    スラッグを変更したところ無事表示されるようになりました。
    なぜこのようになったか分かりませんが、postnameを変更した後、元に戻す作業などをしたかもしれません。

    いずれにしても助かりました、本当にありがとうございます。m(__)m

13件の返信を表示中 - 166 - 178件目 (全178件中)