halbot
フォーラムへの返信
-
フォーラム: 使い方全般
返信が含まれるトピック: 投稿のアーカイブ(投稿一覧)を設定後、条件分岐を指定するには?改めてfunctions.phpに記述されたというコードを見てみましたが、
これだと投稿タイプが「post」の記事一覧を「/news」で表示する、という内容になっていますね・・・。function add_my_post_type(){ $labels = array( 'name' => 'ニュース', 'singular_name' => 'ニュース', 'add_new' => '新規追加', 'add_new_item' => 'ニュースを追加する', 'edit_item' => 'ニュースを編集', 'new_item' => '新規ニュース', 'all_items' => '全てのニュース', 'view_item' => 'ニュースを見る', 'search_items' => 'ニュースを探す', 'not_found' => 'ニュースがありません', 'not_found_in_trash' => 'ゴミ箱にニュースはありません', 'parent_item_colon' => '', 'menu_name' => 'ニュース' ); $args = array( 'labels' => $labels, 'public' => true, 'publicly_queryable' => true, 'show_ui' => true, 'show_in_menu' => true, 'query_var' => true, 'rewrite' => array( 'slug' => 'news' ), 'capability_type' => 'post', 'has_archive' => true, 'hierarchical' => false, 'menu_position' => null, 'supports' => array( 'title', 'editor', 'author', 'thumbnail', 'excerpt', 'comments' ) ); register_post_type( 'news', $args ); } add_action( 'init', 'add_my_post_type' );
こちらのコードを代わりにfunctions.phpに入れてパーマリンク設定を保存すると、
前述した方法が使えるんじゃないかなと思います。フォーラム: 使い方全般
返信が含まれるトピック: 投稿のアーカイブ(投稿一覧)を設定後、条件分岐を指定するには?はじめまして。
> この投稿のアーカイブページのみに表示される条件分岐
カスタム投稿タイプアーカイブの判別ですので
「is_post_type_archive()」を使ってみてはいかがでしょう。> archive-post.phpのような個別のテンプレートを指定
archive-post.phpを参考にarchive-news.phpを作成し、テーマ内に設置してみてください。
フォーラム: 使い方全般
返信が含まれるトピック: カスタム投稿で続きを読むボタンのリンクが飛ばない(リンクが#になっている?)解決したようでよかったです。
>いただきましたコードを直後に入れてみたところ、int(68)が表示されました。
>恐れ入りますが、この表示の意味?を教えていただけないでしょうか?
>(調べてみたのですがうまくヒットせず・・・)var_dumpはPHPで用意されている関数でして、調査をする際に変数などに何が入っているか表示するためのものです。今回の場合はint(68)はおそらく抜粋記事のIDですね。
もしまた別に問題が起きた際にはぜひご活用ください。https://techacademy.jp/magazine/11585
- この返信は5年、 10ヶ月前にhalbotが編集しました。
フォーラム: 使い方全般
返信が含まれるトピック: カスタム投稿で続きを読むボタンのリンクが飛ばない(リンクが#になっている?)なるほど・・・。
$value->IDにきちんと値が格納されているか確認できますか?<?php echo get_the_excerpt( $value->ID ); ?>
の直後に
<?php var_dump( $value->ID ); ?>
を入れて何が表示されるか教えて欲しいです。
フォーラム: 使い方全般
返信が含まれるトピック: カスタム投稿で続きを読むボタンのリンクが飛ばない(リンクが#になっている?)はじめまして。
以下のように変更された場合ってどうなりますでしょうか。//変更前 <?php echo get_the_excerpt($value->post); ?> //変更後 <?php echo get_the_excerpt($value->ID); ?>
フォーラム: プラグイン
返信が含まれるトピック: Custom Post Type UIでの記事管理はじめまして。
>カスタム投稿タイプ毎にカテゴリーを分ける。
>(他のカスタム投稿タイプのカテゴリーは投稿画面に表示されない)こちらですがカスタムタクソノミーを使用されたらいかがでしょうか?
フォーラム: 使い方全般
返信が含まれるトピック: お問い合わせフォーム送信のタイミングでカスタムフィールドを更新したいWP関数は基本的に外部実行できないので、それによるエラーかなと思っています。
なので、actionに指定したphpファイル内で以下を参考に「wp-load.php」を読み込めば解消できるかと。フォーラム: 使い方全般
返信が含まれるトピック: お問い合わせフォーム送信のタイミングでカスタムフィールドを更新したいフォーラム: 使い方全般
返信が含まれるトピック: カスタムタクソノミーで親ターム子タームごとに表示したいざっくりですが、こんなかんじかなと。
<?php $parents = get_categories(array('parent' => 0, 'hide_empty' => false)); foreach ($parents as $parent){ echo "■{$parent->name}<br />"; // 親カテゴリ $children = get_categories(array('parent' => $parent->term_id, 'hide_empty' => false)); foreach($children as $child){ echo "・{$child->name}<br />"; // 子カテゴリ $child_posts = get_posts(array('posts_per_page' => 2, 'category' => $child->term_id)); foreach ($child_posts as $child_post) { echo $child_post->post_title; } } } ?>
- この返信は5年、 10ヶ月前にhalbotが編集しました。
フォーラム: 使い方全般
返信が含まれるトピック: カスタム投稿で親カテゴリと子カテゴリーを一覧表示したいはじめまして。
簡単にコードを書いてみました。
親カテゴリ、子カテゴリ、投稿を一気に全部取得しようとするのではなく、
別々に取得すれば実現できるのかなと思いました。<?php $parents = get_terms('category', array('parent' => 0, 'hide_empty' => false)); $terms = array(); ?> <?php foreach ($parents as $parent): ?> <?php $terms[] = array( 'parent_slug' => $parent->slug, 'parent_name' => $parent->name, 'children' => get_terms('category', array('parent' => $parent->term_id, 'hide_empty' => false)) ); ?> <li><a href="#<?php echo $parent->slug; ?>"><?php echo $parent->name; ?></a></li> <?php endforeach; ?> <?php foreach ($terms as $term): ?> <section id="<?php echo $term['parent_slug']; ?>"> <h3><?php echo $term['parent_name']; ?></h3> <?php foreach ($term['children'] as $child): ?> <div class="blk"> <h4><?php echo $child->name; ?></h4> <?php $child_posts = get_posts(array('category' => $child->term_id)); ?> <ul> <?php foreach ($child_posts as $child_post): ?> <li><?php echo $child_post->post_title; ?></li> <?php endforeach; ?> </ul> </div> <?php endforeach; ?> </section> <?php endforeach; ?>
フォーラム: 使い方全般
返信が含まれるトピック: 親、子、孫の順でカテゴリを表示したい上記は親カテゴリ、子カテゴリ。孫カテゴリ全てが記事にカテゴリ付けられているときでしたね・・・。
一番下の階層のカテゴリを取得して、そこから子、親と遡っていく方が汎用性が高そうな気がするので、変えてみました。<?php $post_cats = get_the_category(); if($post_cats){ $bottom_cat = $post_cats[0]; $bottom_anc = get_ancestors($bottom_cat->term_id, 'category'); foreach ($post_cats as $index => $cat) { if ($index > 0) { $anc = get_ancestors($cat->term_id, 'category'); if(count($anc) > count($bottom_anc)){ $bottom_cat = $cat; $bottom_anc = $anc; } } } $bottom_anc = array_reverse($bottom_anc); foreach ($bottom_anc as $anc) { $cat = get_category($anc); echo "{$cat->name}<br />"; } echo $bottom_cat->name; } ?>
フォーラム: 使い方全般
返信が含まれるトピック: wordpressのドメイン変更について 設定メニューに「WordPressアドレス(URL)」と「サイトアドレス(URL)」が表示されないwp-config.phpに以下の記述を加えてみてはいかがでしょうか?
define( 'WP_SITEURL', 'WordPressのアドレス' ); define( 'WP_HOME', 'サイトのアドレス' );
もしくはwp_optionsテーブルの「siteurl」「home」のoption_valueを変更すればいいかと。
フォーラム: 使い方全般
返信が含まれるトピック: 親、子、孫の順でカテゴリを表示したいはじめまして。
「get_the_category」の取得順序がカテゴリの階層順ではなく、名前順で取得されるためかなと思います。
記事が属するカテゴリを階層順に並び替えればいいので、以下のようにしてみてはいかがでしょうか。
<?php $cats = $sort = array(); $post_cats = get_the_category(); foreach ($post_cats as $cat) { $layer = count(get_ancestors($cat->term_id, 'category')); $cats[] = array( 'name' => $cat->name, 'layer' => $layer ); $sort[] = $layer; } array_multisort($sort, SORT_ASC, $cats); foreach ($cats as $cat) { echo "{$cat['name']}<br />"; } ?>