フォーラムへの返信

15件の返信を表示中 - 1 - 15件目 (全31件中)
  • フォーラム: 使い方全般
    返信が含まれるトピック: 表示中の記事と同じ値でソートしたい

    meta_queryを使えばできると思います:

    // 現在の記事の"フィールド2"の値を取得
    $value = get_post_meta( get_the_ID(), 'フィールド2の実際の名称', true );
    
    // サブループのための記事を取得する条件を指定
    $args = array(
    	'post_type'  => 'post',
    	'meta_query' => array(
    				array(
    					'key'   => 'フィールド2の実際の名称',
    					'value' => $value
    				)
    			),
    	'orderby'    => 'date',
    	'order'      => 'DESC'
    );
    // 記事を取得
    $related_posts = get_posts( $args );

    あとは、foreachで回してliなどご希望のスタイルで表示:

    <ul>
    <?php foreach( $related_posts as $post ): setup_postdata(); ?>
    
    	<li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></li>
    
    <?php endforeach; wp_reset_postdata(); ?>
    </ul>

    フォーラム: 使い方全般
    返信が含まれるトピック: 文字の長さで検索

    コードの一部、

    if( is_admin() || !is_search() )
    	return $where;

    にしないと、管理画面のリストにも影響出てしまいますね。失礼しました。

    // 初期化
    $terms = $term_list = array();
    
    // country_listタクソノミーのトップ階層のタームのみ取得
    $terms = get_terms( 'country_list', array( 'parent' => '0' ) );
    
    // トップ階層のタームIDのリスト生成
    foreach( $terms as $term ):
    
    	$term_list[] = $term->term_id;
    
    endforeach;

    ループの内側で、記事ごとに判定:

    while ( have_posts() ) : the_post();
    
    	// トップ階層のタームに属している記事のみ表示
    	if( is_object_in_term( $post->ID, 'country_list', $term_list ) ):
    
    		(ループの内容)
    
    	endif;
    
    endwhile;

    こんな感じでしょうか?

    私が以前使っていた日本のあるサーバ会社は、
    高負荷で警告を受けた際に、

    「確認いたしましたところ、以下のようなSQLが一時的に多数滞留しており
    下記の処理が負荷の要因となっている可能性がございます。
    (以下、SQL文)」

    などの具体的な原因を示唆してくれたこともありました。
    新規にサーバ契約される際は、制限を受けるときにどのような通知をもらえるのか確認してみては?

    フォーラム: 使い方全般
    返信が含まれるトピック: 文字の長さで検索

    テーマのfuntions.phpに以下を記述:

    function filter_by_title_length( $where ){
    
    	if( !is_search() )
    		return;
    
    	$where .= " AND CHAR_LENGTH( post_title ) = 2 ";
    
    	return $where;
    }
    add_filter( 'posts_where', 'filter_by_title_length' );

    上記でいかがですか?(検索時は無条件で適用されますが)

    フォーラム: 使い方全般
    返信が含まれるトピック: 記事一覧について文字数で絞り込みをしたい

    PHPのmb_strlenという関数で文字数を数えられるので、それで実現すると思います。
    whileのループの内側で、記事本文の文字数を数えて判定します。

    例)本文の文字数が100文字以上の記事のみ一覧に表示

    while ( have_posts() ) : the_post();
    
    	$cnt = '';
    
    	$cnt = mb_strlen( strip_tags( $post->post_content ) );
    
    	if( $cnt >= 100 ):
    
    		(ループの内容を記述)
    
    	endif;
    
    endwhile;

    jmzkwさん、こんにちは。

    jQueryでいけると思います。
    例:カテゴリID=5とID=15にチェックを付ける。

    jQuery(document).ready(function($){
    	$('input#in-category-5').attr("checked", "checked");
    	$('input#in-category-15').attr("checked", "checked");
    });

    これを関数にして、お使いのテーマのfunctions.phpなどに置いて、admin_headにフックしてあげればOKだと思います。2つ目は http://ja.forums.wordpress.org/topic/2762 など参考に親カテゴリを取得できれば…いけるかも?

    register_post_type の引数において、
    'exclude_from_search' => true
    を追加すれば除外できると思います。

    プラグインのソースを見てみたところ、
    具体的には、q-and-a.php の58行目あたりに追加でOKだと思います。

    静的htmlが設置されているサーバーでPHPが使えて、静的htmlの拡張子を「php」に変えても運用上問題ないようでしたら、
    SimplePie
    という、RSSを処理するPHPのライブラリを使うことでも実現可能です。

    簡単に書くと…

    • 静的htmlファイルのファイル名をindex.phpに変更
    • 静的htmlファイルが置いてあるサーバーの任意の場所にSimplePieをアップロード
    • 静的htmlファイルのheadなどでSimplePieを読み込む
    • サンプル(http://simplepie.org/wiki/setup/sample_page)やドキュメントを参考に、外部のWordPressサイトからRSSフィードを取得するための一連のコードを記述
    • RSSを出力したい部分に、PHPのforeach等のループで取得したコンテンツを展開、出力

    シンプルだしWordPressのテンプレートタグにも似ている?ので
    あまり抵抗なく使えるのではないでしょうか。

    私もよくエックスサーバーを使います。

    ところでこのソース(の残骸)って、WordPressのものじゃないですよね?
    文字コードもshift_jisだし。 …これはもしかしてエックスサーバーの初期状態で設置されているindex.htmlの残骸では。
    なぜこうなるのかはちょっとわかりません。

    あと、PHPで画面が真っ白になる時は、PHPのmemory_limitを増やすと具体的なエラーが表示されるようになるかもしれません。
    エックスサーバーの場合、初期状態では15MBなので32MBくらいに増やしたほうが良いと思います。

    テキストエディタで
    memory_limit = 32M
    と書いて、ファイル名をphp.iniとして保存し、
    トップディレクトリに置いて下さい。

    それから、多分触られていないと思いますが、テーマフォルダ内のfunctions.phpに自分でつくった関数などペーストすると画面が真っ白になることがあります。ビジュアルエディタが使えなくなることもあります。その時は、追加したコードを一旦削除して、前後のスペースやリターンも削除すると復帰するかもしれません。

    tenpuraさん

    失礼しました。
    今確認したところです。
    削除、お手数をおかけしましたm(__)m

    こちらの投稿は削除いたしました。
    理由: 宣伝投稿

    管理者

    テーマフォルダ内に、index.phpというファイルがあるので、それを複製して、home.phpという名称にしてください。

    そのファイルを開き、ループ(while から endwhileまで)の中にある

    • the_permalink() …記事本文へのリンク
    • the_title() …記事タイトル
    • the_date() …投稿日

    上記のタグ周辺だけを残して削除してください。
    するとイメージに近くなりませんか?
    (ul,liなどのタグで整形は必要だと思いますが)

    特定のカテゴリの記事のみに絞る必要がある場合は、
    ループの手前に

    などを置いて、特定のカテゴリのみに絞ることもできます。詳しくは上記リンクを参考にしてください。

    プラグインの「Customizable Post Listings」などを使うのも手軽でいいかもしれません。

    WordPressの参考書をどれかご覧になられることをおすすめします。

    【使用できたサーバ】
    ※いずれのテストも2.7-RC1 から 2.7へアップデート

    『エックスサーバ(サーバ番号: sv69)』

    • OS Linux
    • Apache 2.0.52
    • PHP 4.3.9
    • MySQL 4.0.26

    『ファーストサーバ|ウルトラビジネス2』

    • OS Linux 2.6.x
    • Apache 1.3.37
    • PHP 5.2.6
    • MySQL 5.0.27

    『使えるねっと|Linux VPS|シルバー』

    • OS Linux 2.6.9
    • Apache 2.2.3
    • PHP 5.1.6
    • MySQL 5.0.27


    とりあえず以上です。

    フォーラム: インストール
    返信が含まれるトピック: OCN

    どういった部分でつまづいていらっしゃるのでしょうか?

    OCNウェブスタンダードにて2008年8月頃、WordPressで企業サイトを構築をしたことがありますが、下記の注意が必要です(すべての当時の状況)。

    • サイトのルートに置くindex.phpの拡張子を「.php4」に変更(その他のPHPファイルは変更の必要なし)
    • PHPのバージョンは4のみ。詳細不明。
    • パーマリンク変更不可
    • データベースの管理ツールはOCN独自のもの(?) 必要最低限の機能。phpMyAdminはなし
    • その時使用していたアカウントに割り当てられたサーバーでは、昼間はDBがやたらレスポンスが悪い(トップページの表示に30秒ぐらいかかることも。DBが絡まない通常のHTMLファイルは問題なし)
    • phpinfo() によるサーバの詳細閲覧不可

    以上の点から、WordPressのようなデータベースを必要とするツールを使う場合に限っては、初心者には敷居が高いサーバかもしれません。

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