
いつもはROMでいろいろ勉強させて頂いております。
WORDPRESS初心者であります。
このたび、HTMLからWORDPRESSの移行を行うことになりました。
そこで、カスタム投稿にひっかかってしまい、3日ほど検索をしましたが、検索の仕方が下手なのか解決方法が見つからず、こちらでお知恵をお借りしたく相談させて頂きます。
元々HTMLファイルだった「index.html」を「index.php」に変更し、
PHPでget_headerやget_footerなどを行い、外観のウェブサイトは移行前と同様のものになりました。
このTOPページに「最新ニュース」が5件表示されるようになっており、「◆ニュースのタイトル」「本文」が表示されます。
上記2つをカスタム投稿を用いて、index.phpに表示をさせたいです。
そこで、Custom Post Type UIとAdvanced Custom Fieldsのプラグインを用いて
「TOP画面ニュース」(type_slug='top_news')の投稿タイプを作成し、フィールドグループとして、「見出し1」「本文1」
「見出し2」「本文2」「見出し3」「本文3」「見出し4」「本文4」「見出し5」「本文5」とフィールドを作りました。フィールド名は「見出し」が「news_title」にそれぞれの数字、「本文」が「news_contents」にそれぞれの数字を設定しました。
続いて、index.phpに記載をするコードがまったくわかっておらず、
いろんなところのサイトのコードを真似てはうまくいかず、の繰り返しで、
最終的なコードは以下になりますが、それでもやはりうまくいきません。
<?php get_header(); ?>
<div id="contents">
<div id="info02">
<?php query_posts('post_type=top_news'); ?>
<?php $text = get_field('news_title1');
if ( $text ) {
echo $text;
}
else {
echo "値がありません";
}
?>
<h3><?php the_field("news_title1", $post->ID); ?></h3>
<p><?php the_field("news_contents1", $post->ID); ?></p>
<h3><?php the_field("news_title2", $post->ID); ?></h3>
<p><?php the_field("news_contents2", $post->ID); ?></p>
<h3><?php the_field("news_title3", $post->ID); ?></h3>
<p><?php the_field("news_contents3", $post->ID); ?></p>
<h3><?php the_field("news_title4", $post->ID); ?></h3>
<p><?php the_field("news_contents4", $post->ID); ?></p>
<h3><?php the_field("news_title5", $post->ID); ?></h3>
<p><?php the_field("news_contents5", $post->ID); ?></p>
<?php get_footer(); ?>
デバッグ用として条件分岐でフィールドで値が取得されているのか確認をしたところ、elseの"値がありません"の処理へ行ってしまっているため、表示がされないのだと思います。
こちらのコードをいろんなところで調べたり、参考サイトをみたりしていましたが、知識不足なところもありお手上げ状態でした。
こちらの表示をするためにはどのようにすれば解決をするのでしょうか。
アドバイスや解決策など、是非お知恵を頂きたく思います。
ご助力のほどよろしくお願い致します。
A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
ごめんなさい、面倒なのでよく読んでません(ぉぃ
ちょっとプラグインが何をしているのかわかりませんが、カスタムフィールドに入れた値をそのままトップページに表示させたいというだけですよね。
テキストだけでしたら特にプラグインは要らないと思うのですが。
カスタムフィールドを表示させるのは、
<?php echo get_post_meta($post->ID , 'キー' ,true); ?>
で表示されるはずです。
上記の場合ですと、
<?php echo get_post_meta($post->ID , 'news_title1' ,true); ?>
になります。
the_fieldはAdvancedCustomFieldの関数なので、ACFの設定ができるプラグインなのかな???
で、なんで表示されないかというと、キーが一致していないから。
news_title1で設定したなら、記事画面のほうでも「見出し1」ではなく「news_title1」とする必要があります。
もしくは、どちらも「見出し1」で統一するか。
それと、「値がありません」って表示は別な問題で、
<?php query_posts('post_type=top_news'); ?>
<?php $text = get_field('news_title1');
このあたりは、下層のブログ記事でtop_newsの記事の一覧を取得する関数(しかも今は推奨されていない書き方)なので、前半の部分は不要です。
まとめますと
・カスタムフィールドにnews_title1,news_contents1という名前で値を入力
<?php get_header(); ?>
<div id="contents">
<div id="info02">
<h3><?php echo get_post_meta($post->ID , 'news_title1' ,true); ?></h3>
<p><?php echo get_post_meta($post->ID , 'news_contents1' ,true); ?></p>
・・・
</div>
</div>
<?php get_footer(); ?>
もし、下層にページを作って、その一覧をトップに5件表示したい、という話でしたらまた別なハナシです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- HTML・CSS ヘッダーの画像にメインエリアがかぶってしまいます 1 2022/11/28 14:06
- PHP コメント機能に返信欄を矢印で追加したい 1 2022/05/09 21:17
- PHP PHPでCookieを使った訪問回数について 1 2023/05/28 14:10
- JavaScript jQueryでのドラッグアンドドロップについて 1 2022/07/07 21:04
- AJAX JavascriptからPHPへのAjax通信でnullが返ってくる 3 2022/08/03 22:00
- PHP php テーブルが作成できない 1 2022/11/17 23:41
- MySQL php テーブルを作れない 2 2022/11/17 18:22
- JavaScript jqueryを使ったスムーススクロールのコードを書いたのですが、HTMLコード内にある、a butt 2 2022/04/14 10:59
- JavaScript 【jquery】EasyUIのSubGridにMySQLのテーブルデータを表示&編集にしたい 5 2022/05/02 13:10
- JavaScript Javascriptが機能せず原因が分からないので教えて頂きたいです 3 2023/06/04 14:50
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
GETメソッドで文字列として+を...
-
変数について
-
wordpressのテーマSightの日付表示
-
問題部分がJavascriptかPHPか分...
-
phpの警告
-
php→mysqlへの接続が出来ない(...
-
<A HREF="bg.php" target="_bl...
-
functionに括弧を使用するとエラー
-
3人の旅人が
-
このサイトの作成技術は何ですか?
-
設定した時間だけ実行されるプ...
-
コメントフォームの設定方法
-
O/Rマッパーの選定
-
HTMLについて質問ですが。
-
メールを受信で文字化け
-
メール送信できない
-
nl2bの代用関数を何か知ってい...
-
PHPのインストールで
-
携帯サイト制作をしておりまし...
-
特定のURLに移動するには?
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
データ送信をボタンを押さずに...
-
form actionで二つ送信先を指定...
-
inputタグでphpを呼び出す際、...
-
【PHP】ページを更新すると勝手...
-
PHP table内、<a href使って su...
-
ボタンのクリック数を合計保存...
-
フレームを二つ同時に変更する
-
PHPにおけるCookieの挙動につい...
-
PEAR Image_QRCodeのエラー
-
phpでcookieをセットする方法
-
PHP,HTMLの値の引き渡しについて
-
携帯サイトでフォームタグとラ...
-
xamppでformによるデータの送信...
-
PEARのAuthを勉強中です
-
WORDPRESS カスタム投稿 カス...
-
Winsockでステータスコードを受...
-
GET変数の区切り文字について
-
セキュリティについて
-
テキストボックスにデータベー...
-
phpのプリペアドステートメント...
おすすめ情報