フォーラムへの返信

15件の返信を表示中 - 1 - 15件目 (全16件中)
  • トピック投稿者 under

    (@under)

    @nobitaさんアドバイスありがとうございます。正にこういう呼び出しをしたかったのでとても助かります。いただいた方法でランダム抽出出来る事を確認させていただきました。
    ただ、自分のphpに関するスキル不足により、カテゴリ絞り込みができなかったり、教えていただいたコードと合体させようとするとphpの中にphpのようになってしまったり、、まだ形にならず頭がパンク中ですが、もう少しやってみようとおもいます。

    <?php
    $paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
    $args = array( 
    
        'cat' => 1,
        'posts_per_page' => 10,
        'paged' => $paged,
        'orderby' => 'desc'
    );
    
    $the_query = new WP_Query( $args );
    
    if ( $the_query->have_posts() ) :
    while ( $the_query->have_posts() ) : $the_query->the_post();
    ?>
    
    <div class="<?php echo get_post_meta($post->ID , 'xxxxx' ,true); ?>">
    <a href="<?php the_ID(); ?>">
    <?php if(has_post_thumbnail()) { echo the_post_thumbnail(); } ?>
    
    <?php
    $terms = get_the_terms( get_the_ID(), 'xxxx' );
    if ( !empty($terms) ) : if ( !is_wp_error($terms) ) :
    ?>
    <?php foreach( $terms as $term ) : ?>
    <strong class="<?php echo $term->slug; ?>"><?php echo $term->name; ?></strong><br/>
    <?php endforeach; endif; endif; ?>
    
    <h2>
    <?php
    if ( post_custom('xxxxxx') ) : echo get_post_meta($post->ID , 'xxxxxx' ,true);
    else :
    the_title();
    ?>
    </h2>
    </a>
    
    </div><!-- /.post -->
    
    <?php endwhile; ?>
    <ul id="pagetop"><li><a href="#top">PAGETOP</a></li></ul>
    <div class="nav-below" id="nav-belowID"><?php next_posts_link('古い記事へ') ?></div>
    
    <?php endif;
    wp_reset_postdata();
    ?>
    トピック投稿者 under

    (@under)

    ご返信ありがとうございます、自分はTransients APIを使った事が無いので具体的な導入方法がまだわかりませんが、別の使い方で考えるととても可能性のある機能ですね、参考になりました。

    トピック投稿者 under

    (@under)

    レスありがとうございます、教えていただいた方法で実現することができました!
    ずっと詰まっていた部分だったのでたすかります。

    if('A' == $_GET['tag']) {
       // Aの場合
       include(TEMPLATEPATH . '/A.php');
    } else {
       // B or other
       include(TEMPLATEPATH . '/B.php');
    }

    もしかしてPHPの初歩だったのでしょうか。
    勉強ですね。。。

    フォーラム: 使い方全般
    返信が含まれるトピック: Press This機能で画像を挿入できない
    トピック投稿者 under

    (@under)

    新規に2.8を同サーバーの別ディレクトリにインストールしてみたのですがこれでもpress thisで画像を挿入することができませんでした。しかも本文欄に挿入される文字が自動で白くなってしまうように。。
    ぱっとみタイトル以外何も挿入されていないようにみえる状態になってしましました。

    確認環境 xp3 – IE8、Mac OS X 10.5.6 – Safari 4

    Coreserverでうごかすことが難しいとかなのですかね。。。
    phpをセーフモードで動かしているのとは関係あるのでしょうか?
    こちらのサーバーでPress this動作している方いらっしゃいましたら
    ご報告いただけると幸いです。

    フォーラム: 使い方全般
    返信が含まれるトピック: Press This機能で画像を挿入できない
    トピック投稿者 under

    (@under)

    御返信ありがとうございます。
    masaruさんの動作している環境を見る限りどうやら
    こちらの環境がなにかおかしくなっているようですね。。

    2.3から上書きアップグレードしてきた状態なので
    一度新規にインストールし直してみようとおもいます。

    フォーラム: 使い方全般
    返信が含まれるトピック: Press This機能で画像を挿入できない
    トピック投稿者 under

    (@under)

    ちなみに動作検証として

    ・Win XP SP3 – IE6
    ・Win XP SP3 – IE7
    ・Win XP SP3 – IE8
    ・Mac OS 10.5.6 – Safari 3

    上記4環境で検証をおこないましたがどれも画像が挿入できないかんじでした。
    サーバーはcoreserverを使用しています。

    逆に問題なく動いている方などいらっしゃいましたら
    動作している環境など教えていただきたいです。

    よろしくお願いいたします。

    トピック投稿者 under

    (@under)

    >>yoshiさん

    ありがとうございます

    global $author_id, $cat_id;
    echo "author: $author_id, category: $cat_id";

    こちらどのように使うのかいまいち解らなかったのですが、headerに教えていただいたものを記述したところカテゴリ別に表示分けができるようになりました。
    ループの外で判別するにはどうすればいいんだろうという疑問がやっと解決です。。

    正直半分ぐらい理解できないままできたかんじなので改めて
    phpの参考書とにらめっこしてみようと思います。

    どうもありがとうございました!

    トピック投稿者 under

    (@under)

    ご教授いただいた方法色々試してみました。
    phpのどこかに下記コードが記述してあれば、ループ内に$author_IDを使うことで
    判別に利用できたのですが、ループ外だとうまく呼び出せていないようです。
    これはget_the_author_ID()自体がループ内でしか使えないことと関連しているのでしょうか。?

    <?php
    $author_id = get_the_author_ID();
    $categories = get_the_category();
    $cat_id = $categories[0]->term_id;
    ?>

    header.phpなどにも投稿者別に吐き出すデザインを分けて書いてますので
    ループ外で使いたいのですがループ外で使えるようにする
    カスタムの方法はわからなかったです。。。

    ご参考までに改変前のソース張らせていただきます。

    <?php get_header(); ?>
    
    <?php switch ($author) {
    case "2": echo '投稿者2のヘッドイメージ' ; break;
    case "3": echo '投稿者3のヘッドイメージ' ; break;
    case "4": echo '投稿者4のヘッドイメージ' ; break;
    default: echo 'そのほかの場合のヘッドイメージ'; break;
    } ?>
    
    <?php /* カテゴリが1,2の場合の記事表示 */if (in_category('1')||in_category('2')): ?>
    <?php if (have_posts()) : ?>
    
    <?php while (have_posts()) : the_post() ; ?>
    <?php the_content(); ?>
    <?php endwhile; else: ?>
    
    no content
    
    <?php endif; ?>
    <?php /* カテゴリが1,2以外の記事場合 */else: ?>
    
    <?php if (have_posts()) : ?>
    
    <?php while (have_posts()) : the_post() ; ?>
    
    <h2 class="<?php switch ($author) {
    case "2": echo '投稿者2の場合でカテゴリ1,2以外の場合のループ内ヘッドカラー' ; break;
    case "3": echo '投稿者3の場合でカテゴリ1,2以外の場合のループ内ヘッドカラー' ; break;
    case "4": echo '投稿者4の場合でカテゴリ1,2以外の場合のループ内ヘッドカラー' ; break;
    default: echo 'その他のヘッドカラー' ; break;
    } ?>"><?php the_title(); ?></h2>
    <?php the_content(); ?>
    <?php endwhile; else: ?>	
    
    no content
    
    <?php endif; ?>
    <?php endif; ?>

    link_pageで吐き出すURLに各IDを渡すのは難しそうなので、
    URLから判別をかけなくても記事デザインを判別できるようにしたいかんじなんですが、、
    うーん難しい。。。

    トピック投稿者 under

    (@under)

    ご返信ありがとうございます。wp_link_pageで吐き出されるURLに値を追加するのにthe_author_ID(),the_category_ID()は使えないんですね。。
    この方法でやるのは無理がありそうなので教えていただいた

    <?php
    $author_id = get_the_author_ID();
    $categories = get_the_category();
    $cat_id = $categories[0]->term_id;
    ?>

    を使ってやる方法に挑戦してみようと思います。

    トピック投稿者 under

    (@under)

    >デザインを分けるためだけなら、get_the_author_ID()、get_the_category()で
    >投稿者・カテゴリIDを取得するほうが簡単じゃないかと。

    なるほど、これはurlで各IDを渡さなくても記事データから自動で判別してくれるということでしょうか?

    現在1ページ目(single.php)に入る際の判定としてin_categoryとswitchを併用しています。

    <?php if (in_category('1')||in_category('2')||in_category('3')||in_category('4')): ?>

    のようにin_categoryを使ってカテゴリごとにデザインを分け、その中で

    <?php switch ($author) {
    case "2": echo ~'; break;
    } ?>

    のようにswitchを使って投稿者ごとに表示するタイトルやデザインを細かく分けられるようにしています。

    ちなみにphp文のなかにphp文は入らないんだろうなと思って他のコード見ながら

    <?php wp_link_pages('before=&after=&amp;author=' . the_author_id()
    . ' &amp;cat= ' . the_category_id() . '
    &next_or_number=next'); ?>

    ↑こんな感じに書いたら

    43<p><a href="http://~/contents/?p=70&amp;page=2">次ページへ</a>

    こんなふうにIDはそれぞれ取得できたっぽいんですが、ID数字自体が
    リンクの外にテキストの羅列ででてしまってよくわからないことに。。。

    フォーラム: 使い方全般
    返信が含まれるトピック: 挿入する画像のデフォルトサイズを指定したい
    トピック投稿者 under

    (@under)

    お返事遅くなって申し訳ないです。
    上記ありがとうございます、mp-includes/media.phpの方で指定されているんですね。
    バージョンアップを考えるとあまりいじりたくないですね。。。
    phpはあまり詳しくないのですが、中サイズはサムネイルとフルサイズの間の幅を
    じどうでとっているかんじなのかな

    スタイルシートとかでサムネイル、中サイズ、フルサイズ最大幅それぞれ
    上書き指定する方法などあったりするといいですね。

    フォーラム: 使い方全般
    返信が含まれるトピック: 投稿者(author)別にページデザインを変えるには?
    トピック投稿者 under

    (@under)

    ありがとうございます!
    教えていただいた方法から少しいじって無事表示の
    振り分けができるようになりました。
    正直なぜこの構文で振り分けができているのかいまいちわからないんですが、

    なぜか<?php switch (get_the_author_ID()) {
    だとうまく振り分けができなく(僕の使い方が良くなかったのかもしれません。。)

    他に投稿者を呼び出せそうなものを一通り試したところ
    <?php switch ($author) {
    この形でauthor判別を受けるようになりました。
    カテゴリの絞り込みも両立しているようです。

    ちなみにget_the_author_ID()って投稿者ID(数字のID)を返すんですよね。。?
    翻訳しながらauthor-template色々眺めたんですが、もしかしたらループ内でしか
    使えないのかなと思い$authorで試した感じです。
    (ちなみに条件分岐はheader.php内のみでおこなっています)

    get_the_author_ID()イコール$authorだと認識しているんですが
    これは勘違いなのかな。結局使い方がわかっていない自分。。

    lilyfanさん助かりました〜。:-)

    フォーラム: 使い方全般
    返信が含まれるトピック: 投稿者(author)別にページデザインを変えるには?
    トピック投稿者 under

    (@under)

    in_categoryを使用して

    <?php if ( is_author('author1')): ?>
    <?php if ( in_category('category-a')): ?>
    author1designheader
    <?php endif; ?>
    <?php endif; ?>

    のような重複判別は一度ためしたのですが
    こちらも両立できないようでした。

    教えていただいたget_the_author_ID()、恥をさらすようで気が引けますが、、、。

    例えば

    <?php if ( is_author(get_the_author_ID())): ?>
    author1designheader
    <?php elseif ( is_author(get_the_author_ID())): ?>
    author2designheader
    <?php else : ?>
    author3designheader
    <?php endif; ?>

    とか

    <?php if ( get_the_author_ID()): ?>
    author1designheader
    <?php elseif ( get_the_author_ID()): ?>
    author2designheader
    <?php else : ?>
    author3designheader
    <?php endif; ?>

    とか

    <?php if ( get_the_author_ID('author1')): ?>
    author1designheader
    <?php elseif ( get_the_author_ID('author2')): ?>
    author2designheader
    <?php else : ?>
    author3designheader
    <?php endif; ?>

    などググりながら色々試してみたんですが、どうもうまく動かなく、、
    get_the_author_IDは判別で使うまえに
    $author=get_the_author_ID()みたいに定義つけが必要なのでしょうか?

    AtsushiGTRさん
    ありがとうございます。削除されたようですが
    瞬間的にリンク先からダウンロードして試させてもらいました。
    user themesはアクセスしてきたユーザーに対しての判別のようですね。
    惜しかったです。。。

    フォーラム: 使い方全般
    返信が含まれるトピック: 投稿者(author)別にページデザインを変えるには?
    トピック投稿者 under

    (@under)

    もう少し検証してみましたので記載させていただきます。

    example.com/contents/author1/category-a/
    振り分け効かず。

    example.com/contents/author/author1/
    振り分けが効く。
    このURLにカテゴリ判別?cat=をつけて
    example.com/contents/author/author1/?cat=1
    にアクセスすると
    example.com/contents/category/category-a/
    にリダイレクトがかかる。なぜかauthor情報がURLから抜けてしまう。
    このURLに投稿者判別?author=をつけて
    example.com/contents/category/category-a/?author=3
    にアクセスすると
    example.com/contents/author/author1/
    にリダイレクトされ、category情報がURLから抜けてしまう。
    author判別での表示振り分けは効いているがcategory別に投稿記事を表示できない。

    「特定の投稿者」が投稿した「特定のカテゴリ」のみを一覧で表示することは
    example.com/contents/author1/category-a/
    のURLでできているが、その際
    is_author()、is_category()判別による表示デザインの振り分け
    を両立させることができずデフォルトのデザインの状態で表示されてしまう。

    is_author判別が効くURL
    example.com/contents/author/author1/
    example.com/contents/?author=1

    効かないURL
    example.com/contents/?author=1&cat=2
    example.com/contents/author1/category-a/

    どうもカテゴリと投稿者両方の判別を受けた場合、カテゴリ判別しか効いていないようです。
    こちら両方受けて表示判別するのは仕様上できないということでしょうかね。。。?

    フォーラム: 使い方全般
    返信が含まれるトピック: 投稿者(author)別にページデザインを変えるには?
    トピック投稿者 under

    (@under)

    そうなんですね、
    内部処理のところは私には手も足も出ないかと、、。

    こちらの環境の場合、前述のとおり
    example.com//contents/author1/category-a/
    は掲載コンテンツ自体は表示されていますが、 is_author()が効かず
    デフォルトの表示形式で吐き出されている状況です。

    パーマリンク設定を変えずに
    example.com/contents/?author=3&cat=1
    とURLを直接たたくと
    最初に
    example.com/contents/category/category-a/?author=3
    へリダイレクトされ、このURLから
    example.com/contents/author/author3/
    へリダイレクトされているようです。

    ちなみに使用しているバージョンはWordpress 2.3.3です。

    ご提案いただいた方法で、パーマリンク構造を
    example.com/contents/%author%/%category%/%postname%/
    からデフォルトに戻して試してみたところ、
    おっしゃる通りリダイレクトはまったくしなくなったのですが、

    ・header.php内に記述しているテンプレート側の振り分け判別is_author()の値(半角英字のユーザー名で指定しています)をまったく変えない場合
    <?php elseif ( is_author('3')): ?>
    ・header.php内に記述しているテンプレート側の振り分け判別値指定をid(数字のユーザID)で指定した場合
    <?php elseif ( is_author('author1')): ?>

    それぞれパーマリンク変更前と変わらず is_author()が効きませんでした。。
    デフォルトのパーマリンク設定であれば普通は振り分けが効くものなのでしょうか??
    うーんむずかしい。。
    SEO的なところも含めパーマリンク構造、できればカスタムで指定したいと考えています。

15件の返信を表示中 - 1 - 15件目 (全16件中)