フォーラムへの返信

14件の返信を表示中 - 1 - 14件目 (全14件中)
  • フォーラム: 使い方全般
    返信が含まれるトピック: 投稿に添付した画像の順序入れ替え

    jim912様

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

    フォーラム: プラグイン
    返信が含まれるトピック: Custom Field Template での画像表示

    まずは
    <?php echo get_post_meta($post->ID,"画像",true); ?>
    で何が表示されるかの確認をしてみてはどうでしょう?

    >man56さん、こんばんは。

    「type=file」を設定した項目をget_post_meta()の戻り値は、数値(アタッチ
    メント情報のID)ですが、「type=textarea」のget_post_meta()の戻り値は、
    HTMLタグになってるはずです。
    wp_get_attachment_imageの最初の引数は整数である必要があるので、空白に
    なっているのだと思います。

    「type = textarea」を使うのであれば、get_post_meta()の戻り値の
    <img>タグ内から画像のURLを抽出した後、再度imgタグや必要な属性と連結
    してやる必要があります。

    maicoroさん、こんばんは。

    個別の投稿にカスタムフィールドの値を表示するのであれば、single.php内に
    記述すれば良いかと思います。
    (テーマが「twentyten」ならloop-single.phpかな)

    >うまくいきませんでした。
    とのことですが、何がどううまくいかなかったか書いておくと、レスもつきや
    すくなると思いますよ。

    フォーラム: 使い方全般
    返信が含まれるトピック: 自作XMLファイルで1件しかインポートできない
    トピック投稿者 tonoro

    (@tonoro)

    kzyz様
    こんにちわ。

    確かに生成したXMLには「post_id」がありませんね。
    WordPressからエクスポートしたデータには「post_id」の項目がありました
    ので、私がPHPでxmlを生成した際に抜けてしまったのだと思います。
    次回インポートする際は、連番を振ってインポートしてみようと思います。

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

    フォーラム: プラグイン
    返信が含まれるトピック: twenty tenでwp-pagenaviが動かない
    tonoro

    (@tonoro)

    「設定」-「表示設定」の「1ページに表示する最大投稿数」を1件に設定した
    らどうでしょう?

    また「記事数を取得しているかどうかを確認」するには、テンプレートファイ
    ル(この場合はcategory.phpかな?)に

    <?php
    echo '<pre>';
    print_r( $wp_query );
    echo '</pre>';
    ?>

    を書いて表示される
    found_posts
    が該当します。
    $wp_query->found_posts
    で変数として取得できます。

    query_posもしくはWP_Queryを使ってると、WP_Pagenaviは動かなかったと思い
    ますが、その辺はいかがでしょうか?

    下記拙稿をご参照いただければ幸いです。
    http://3d3dtv.info/wordpress/568/

    本日付けのアップデートVer.1.8.8で試したところ、こちらの環境では、file,
    textとも期待通りの表示になりましたので、ご報告まで。

    参考記事は試していないのですが・・・

    ■カスタムフィールドテンプレート

    [field0]
    type = fieldset_open
    legend = テスト
    multiple = true
    multipleButton = true
    
    [画像]
    type = file
    mediaLibrary = true
    relation = true
    blank = true
    
    [商品名]
    type = text
    size = 80
    blank = true
    
    [商品説明文]
    type = textarea
    rows = 7
    cols = 70
    blank = true
    
    [field0]
    type = fieldset_close

    ■テンプレート

    //DBからデータ取得。
    //$wpdb->postmeta カスタムフィールドのキーと値が保存されているテーブル
    global $wpdb;
    $query = "SELECT meta_id,post_id,meta_key,meta_value FROM $wpdb->postmeta WHERE post_id = $post->ID ORDER BY meta_id ASC";
    $cf = $wpdb->get_results($query, ARRAY_A);
    
    $pics = array();
    $item = array();
    $desc = array();
    
    foreach( $cf as $row ){
    	if( $row['meta_key'] == "画像" ){
    		array_push( $pics, $row['meta_value'] );
    	}
    	if( $row['meta_key'] == "商品名" ){
    		array_push( $item, $row['meta_value'] );
    	}
    	if( $row['meta_key'] == "商品説明文" ){
    		array_push( $desc, $row['meta_value'] );
    	}
    }
    
    $length = count( $pics );
    //表示
    for( $i = 0; $i < $length; $i ++ ){
    		echo '<div class="food">';
    		echo '<h3>' . $item[$i] . '</h3>';
    		echo '<p>' . wp_get_attachment_image( $pics[$i] ) . '<br />';
    		echo $desc[$i] . '</p>';
    		echo '<hr />';
    		echo '</div>';
    }

    CFTには、各項目に「blank = true」というパラメータを追加しました。これ
    に関してはプラグイン作者様にご指南いただきました。

    で「blank = true」をつけると、meta_idの順序と投稿画面での入力順序の整
    合が取れるのですが、get_post_custom()で取得する際meta_idがソートのキー
    になっていないので、元の表示用のソースでは、データがチグハグに表示され
    てしまうようでした。
    なので、DBから直接meta_idでソートした状態で取得しました。
    それ以降のソースはもっときれいに書けそうな気もします。

    上記の設定・ソースで5件ほどのグループの追加・削除を繰り返してみて、問
    題なさそうでした(今回の件もありますので、良くご検証くださいませ)。
    画像を含んだグループを削除すると最後尾のグループの画像を見失う、いう症
    状が出ましたので、この点はまた別の設定が必要なのかも知れません。

    gin260さん、はじめまして。
    http://ja.forums.wordpress.org/topic/6819?replies=2
    を投稿した者です。

    せっかく参考にしていただいたのに申し訳ありませんm(_ _)m
    確かに、データの削除・追加をしたり、一度保存した後にデータを入力すると、
    データがバラバラになりますね。

    まだ試せていませんが、本家フォーラムにてうまく行ってるっぽい投稿があり
    ましたので、ご覧になってみて下さい。
    http://wordpress.org/support/topic/plugin-custom-field-template-unique-id-of-each-instance-of-a-multiple-field?replies=12

    私の方でも、試してみたいと思います。

    フォーラム: プラグイン
    返信が含まれるトピック: Custom Field TemplateでMultipleなfieldset
    トピック投稿者 tonoro

    (@tonoro)

    本家サイトに「グループ内でのフィールドごとの’multiple = true’と
    ‘multipleButton = true’はうまく機能しない。」という記述がありましたの
    で、「multiple = true」を外したところ、目的の通りに値が取得できました。
    追加削除を繰り返すと順序がバラバラになりますが、何かソートのキーになる
    もの(IDや日時等)の項目を作成し、レコードとして連結した後にソートすれば
    表示順序も調整できました。

    以下汚いですが、コードです。
    ■Custom Field Templateの管理画面にて

    [field0]
    type = fieldset_open
    legend = 見出し
    multipleButton = true
    
    [value1]
    type = text
    label = 項目1
    
    [value2]
    type = text
    label = 項目2
    
    [field0]
    type = fieldset_clos

    ■テンプレートにて

    $cf  = get_post_custom( $post->ID );
    $value1	= $cf['value1'];
    $value2	= $cf['value2'];
    $field0 = $cf['field0'];
    $lengh = $field0[0] );
    
    //ソートのための配列生成
    $values = array();
    for( $j = 0; $j < $length; $j ++ ){
    	$v = $value1[$j] . "|" . $value2[$j] ;
    	array_push( $values, $v );
    }
    //$value1でソート
    sort( $values );
    
    //表示
    for( $i = 0; $i < $length; $i ++ ){
    	$value = $values[$i];
    	$v = explode( "|",  $value );
    		echo '<dl>';
    		echo '<dt>' . $v[0] . '</dt>';
    		echo '<dd>' . $v[1] . '</dd>';
    		echo '</dl>';
    }

    siwakiさん、こんばんは。

    同じ現象で悩みました。私の場合は、サーバーの同時アップロード数の制限が
    20件だったのが原因でした。その時のサーバーはWadaxです。
    heteml.jpで同じ設定のCustom Field Templateを動作(そのときは画像24点を
    アップロード)させると、難なく動作しましたので、サーバー側の制限ではな
    いかと思います。

    phpの同時アップロード数max_file_uploadsの値を確かめてみて下さい。
    もし該当するようであればphp.iniを設定できる環境なら回避できるかもしれ
    ません。

    フォーラム: 使い方全般
    返信が含まれるトピック: 自作XMLファイルで1件しかインポートできない
    トピック投稿者 tonoro

    (@tonoro)

    CSVファイルを弄って、CSV-Importerでインポートできましたので、一応解決
    済みとさせていただきます。

    フォーラム: 開発版
    返信が含まれるトピック: カスタム投稿タイプのアーカイブ用テンプレート
    トピック投稿者 tonoro

    (@tonoro)

    >LVP8様、kvex様
    レスありがとうございます。

    >内部的にはまだ動作するようになってない
    ということなのですね。

    プラグインのソース内に「has_archive」がありませんでしたので、
    archive-○○○.php
    を使いたければ、

    • プラグインを使わずにカスタム投稿タイプをfunctions.phpに書く or
    • has_archiveを設定するプラグインを使う

    ということですね。

    お教えいただきありがとうございましたm(_ _)m

    フォーラム: 使い方全般
    返信が含まれるトピック: カスタム分類で絞込み
    トピック投稿者 tonoro

    (@tonoro)

    LVP8様
    ご返信ありがとうございます。

    早速試して見ました。
    見事、思ったとおりの動作になりました!ありがとうございます!!

    ※当初、クエリーで抽出される件数と、表示したい件数に差異が発生するため、
    ページングがおかしくなりましたが、表示用のループとは別に、
    ‘posts_per_page=-1’+いただいた条件分岐
    でループを回して、表示したい件数をカウントし、paginate_links()の引数
    totalに代入することで解決しました。

    タクソノミー/タームの複数指定、今後のバージョンアップでもっと扱いやす
    くなると良いですね。
    最初の投稿にも書いてますが、query_postsでtaxonomy=termなんてできると、
    ステキです。

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